SQL70001: This statement is not recognized in this context.

By | 2014年1月15日

关于错误:
SQL70001: This statement is not recognized in this context.
的产生原因以及解决办法。

在SQL Server Database Project中,如下图是添加脚本时的界面:

addnewitem

请注意:
Script(Build)’ — 该文件是DDL类型文件
Script(Not in build)‘ — 该文件是DML类型文件

DML(data manipulation language):
它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。

DDL(data definition language):
DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。

DCL(Data Control Language):
是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL。

该错误产生的原因是在DDL类型文件中,使用了 select ,insert, update, delete 等对数据操作的语句造成。

解决方案就是:搞清楚文件类型,使用正确的操作语句。

 

发表评论