Home >> FAQs/Tutorials >> SQL Server FAQ
SQL Server FAQ - Overflow Errors with Integer Literals
(Continued from previous topic...)
What Happens If an Integer Is Too Big for INT Date Type?
If you are entering an INT data type literal with representing an integer value too big
for INT data type to store, the SQL Server will give you an arithmetic overflow error.
The same error will happen on BIGINT, INT, SMALLINT, and TINYINT data types.
Remember that INT data types uses 4 bytes to an integer value
between -2^31 (-2,147,483,648) to 2^31-1 (2,147,483,647).
The tutorial exercise below gives an example of arithmetic overflow errors.
-- INT value in the range
DECLARE @x INT;
SET @x = 2147483647;
-- INT value overflow
DECLARE @x INT;
SET @x = 2147483648;
Msg 8115, Level 16, State 2, Line 2
Arithmetic overflow error converting expression to data type int.
(Continued on next topic...)
- What Is a Constant or Literal?
- How To Write Character String Constants or Literals?
- What Is a Collation?
- How To Specify the Collation for a Character Data Type?
- What Happens If Strings Are Casted into Wrong Code Pages?
- How To Find Out What Is the Default Collation in a Database?
- How Fixed Length Strings Are Truncated and Padded?
- How To Enter Unicode Character String Literals?
- How To Enter Binary String Literals?
- How To Enter Date and Time Literals?
- Why I Can Not Enter 0.001 Second in Date and Time Literals?
- What Happens If Date-Only Values Are Provided as Date and Time Literals?
- What Happens If Time-Only Values Are Provided as Date and Time Literals?
- What Are Out-of-Range Errors with Date and Time Literals?
- What Happens If an Integer Is Too Big for INT Date Type?
- How Extra Digits Are Handled with NUMERIC Data Type Literals?
- How REAL and FLOAT Literal Values Are Rounded?
- What Are the Underflow and Overflow Behaviors on FLOAT Literals?