Msg 102,Level 15,State 1

时间:2015-08-27 21:48:12

标签: sql sql-server database

我只是想自学如何在SQL Server中使用数据库,看我的第一个教程。这家伙搞定了,但我收到了这个错误:

  

Msg 102,Level 15,State 1,Line 6
  'rollno'附近的语法不正确。

代码:

create database mytestdb

create table mytesttable
(
    rollno int,
    firstname varchar(50),
    lastname varchar(50)
)

作为初学者,我不知道该怎么做。

2 个答案:

答案 0 :(得分:1)

试试这个......

create database mytestdb;
GO

USE mytestdb;
GO

create table mytesttable
(
rollno int,
firstname varchar(50),
lastname varchar(50)
);
GO

当您一次性执行所有语句时,如果没有关键字(批处理程序GO),sql server会尝试将所有语句作为一项工作执行。但是在sql server中肯定有一些规则可以告诉你哪些语句可以或不可以作为一项工作执行(在一个批处理中)。

因此使用关键字GO告诉sql server您希望单独执行这些工作,请注意GO不是T-SQL,它是SQL Server Management Studio(SSMS)术语。

答案 1 :(得分:1)

我注意到,这是因为Unicode文件的字节顺序标记(BOM)。它可以预设为不可见的字符,并使SQL语法无效。

如果我复制/粘贴SQL,它可以工作。如果我加载文件,则不会。

Here is how to fix.(仅限示例)。

您可以通过在记事本中打开文件并在保存文件时另存为ANSI编码来删除这些标记。

enter image description here 查看纯文本文件中的前几个字符。

相关问题