This page documents differences between the current SQL Server database and the future PostgreSQL database. Some datatypes and functions that exist in one SQL implementation do not exist in the other. This page will grow and change as the project moves on.
Type Differences
Some Types that we use in SQL Server don't exist in PostgreSQL or they have different names. Here’s a list:
decimal(int, int) is called numeric(int, int). Note that decimal(int, int) can still be used and is automatically cast to numeric(int, int).
char(int) is called character(int).
nvarchar(int) is called varchar(int).
uniqueidentifier is called uuid (which stands for “universal unique identifier”).
varbinary(int) does not exist. ByteA is used instead as it serves the same purpose.
datetime does not exist. Instead either timestamp with timezone or timestamp without timezone should be used. In its migration Django has consistently chosen to use timestamp with timezone so this trend was continued.