Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 谁能告诉我是什么导致了这个错误?_Sql_Sql Server - Fatal编程技术网

Sql 谁能告诉我是什么导致了这个错误?

Sql 谁能告诉我是什么导致了这个错误?,sql,sql-server,Sql,Sql Server,我正在编写简单的sql查询,但由于某些原因,我不断遇到这个错误 “Msg 8152,第16级,第14状态,第1行 字符串或二进制数据将被截断。”,我不知道是什么原因导致了它,我在网上搜索了哪些东西会导致此错误,但我发现的只是“您试图输入的数据太长了。”,我的代码并非如此 CREATE TABLE BOOK ( PrimaryAuth varchar(20) NOT NULL, Title varchar NOT NULL, ISBN

我正在编写简单的sql查询,但由于某些原因,我不断遇到这个错误 “Msg 8152,第16级,第14状态,第1行 字符串或二进制数据将被截断。”,我不知道是什么原因导致了它,我在网上搜索了哪些东西会导致此错误,但我发现的只是“您试图输入的数据太长了。”,我的代码并非如此

CREATE TABLE BOOK
(
    PrimaryAuth     varchar(20) NOT NULL,
    Title           varchar     NOT NULL,
    ISBN            varchar(10) NOT NULL,
    PubID           char(3),
    Pub_Date        varchar(20),
    price           float,
    book_desc       varchar(50),
    PRIMARY KEY(ISBN),
    UNIQUE(Title)
);

INSERT INTO BOOK values('Scott Westerfeld', 'Peeps', '1595140832', '101', 'September 7, 2006', 8.99, 'A year ago, Cal Thompson...');
有人能告诉我我做错了什么吗

Title           varchar     NOT NULL,
您需要给varchar一个值

i、 e


因此,基本上标题列只有1个字符的值,因为您在创建表时没有定义它,并且您试图在列中插入超过1个字符,这将导致错误

您的
标题
列缺少长度,因此您的值被截断。请编写更好的标题谢谢你的提问。这一条没有说明您需要的信息。@JonathanWood不管问题的标题如何,这是一个基本的语法问题,将来可能对任何人都没有帮助,所以应该关闭它,因为它太本地化了。@BlueFoots:也许吧,但OP将来可能会发布问题。他应该学会写更好的标题。天哪,我一定是个白痴。谢谢。@user1489599上帝没有在听。
book_desc       varchar(50),