Is there a 4 byte unsigned int data type in MS SQL Server?
Am I forced to use a bigint?
Is there a 4 byte unsigned int data type in MS SQL Server?
Am I forced to use a bigint?
It doesn't seem so.
Here's an article describing how to create your own rules restricting an int
to positive values. But that doesn't grant you positive values above 2^31-1
.
http://www.julian-kuiters.id.au/article.php/sqlserver2005-unsigned-integer
Can you just add/subtract 2,147,483,648 (2^31) to the regular int ? (subtract on the way in, & add coming out) I know it sounds silly, but if you declare a custom datatype that does this, it's integer arithmetic and very fast.... It just won't be readable directly from the table
You can use bigint with checked the constraint, but datatype will still in 8 byte :(
I used BINT(11) instead of INT(11), and it acts as UNSIGNED INT(11)