sql ms ssms错误:"将表达式转换为数据类型int的算术溢出错误"

dor*_*fin 1 sql types sql-server-2008

我正在尝试执行我的简单sql代码来创建表.

BEGIN TRANSACTION;
CREATE TABLE vlan (vlanId int, vlanValue varchar(250), vlanName varchar(250), portId int, portName varchar(250), nodeId int, nodeName varchar(250));
INSERT INTO vlan VALUES(1111,998,'VOICE',7272,'1/97',456439345,'10.2.2.2');
.
.
.
.
INSERT INTO vlan VALUES(923482342,240,'INFODESK',2348328434,'4/46',2349234234,'10.1.2.3');
COMMIT;
Run Code Online (Sandbox Code Playgroud)

它给出了错误:

Msg 8115, Level 16, State 2, Line 16164
Arithmetic overflow error converting expression to data type int.
The statement has been terminated.
Msg 8115, Level 16, State 2, Line 16165
Arithmetic overflow error converting expression to data type int.
The statement has been terminated.
Msg 8115, Level 16, State 2, Line 16166
Arithmetic overflow error converting expression to data type int.
The statement has been terminated.
Run Code Online (Sandbox Code Playgroud)

桌子有约.16500个元素.是因为文件太大了吗?

任何帮助都会有用.谢谢

优素福

Jac*_*cob 6

您的vlanId列对于数据类型int(-2147483647到2147483647)是大的.使用bigInt.

链接到SQL Server Doc.