sql - 字符串或二进制数据将被截断。该语句已终止。简单错误

标签 sql sql-server

   Create Table rs
   (
   Id int  IDENTITY (1,1) Primary Key,
   mId int Not NUll,
   ad varchar Not NUll,
   stvarchar Not NUll,
   et varchar Not NUll,
   nt varchar(max)
   );


   insert into rs ( nt, et, st, ad, mId) 
values ('as','as','as','as',12)

我收到这个错误

Msg 8152, Level 16, State 14, Line 2
String or binary data would be truncated.
The statement has been terminated.

很简单的sql,但是解析起来有点困难

最佳答案

您没有为您的 varchar 变量设置大小,因此大小将默认为 1,因此在将大小为 2 的 varchar 插入表中时会出现此错误,为您的 varchar 变量提供大小以解决此问题

  Create Table rs
   (
   Id int  IDENTITY (1,1) Primary Key,
   mId int Not NUll,
   ad varchar(10) Not NUll,
   st varchar(10) Not NUll,
   et varchar(10) Not NUll,
   nt varchar(max)
   );

关于sql - 字符串或二进制数据将被截断。该语句已终止。简单错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37989013/

相关文章:

SQL:合并具有相同ReferenceID的记录

sql - 如何针对这种情况编写查询来获取最大日期?

sql - 如何包含列值大于使用内连接的 SQL 查询中返回值的行?

sql - 使用变量查询

sql - 同时使用 RANK 和 COUNT(DISTINCT) 聚合

sql - 如何使用命令行工具在Ambari/Zeplin上运行sql查询?

mysql - 从 CD 表中返回拥有 1 张以上 CD 的艺术家

c# - 在 C# 中使用参数化查询时抛出异常

sql - SQL Server 2005 XML 数据类型的缺点(如果有的话)

java - java中如何检查 View 是否存在?