Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.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,我正在编写一个将客户数据插入MSSQL数据库的查询。非常基本 不幸的是,我在尝试执行以下操作时遇到了问题: INSERT INTO USERS(newid(),'BOB''S SELECT MARKETING') 我确保转义我的引号,但服务器仍将SELECT视为保留关键字。我不想把一大堆保留的字用括号括起来。有没有一种更干净的方法可以让数据库中的数据完好无损,而不被括号弄乱 我感谢你的帮助 谢谢大家! 这里有几种语法选择。使用代码示例中的一个,您忘记了VALUES关键字。例如: declare

我正在编写一个将客户数据插入MSSQL数据库的查询。非常基本

不幸的是,我在尝试执行以下操作时遇到了问题:

INSERT INTO USERS(newid(),'BOB''S SELECT MARKETING')
我确保转义我的引号,但服务器仍将SELECT视为保留关键字。我不想把一大堆保留的字用括号括起来。有没有一种更干净的方法可以让数据库中的数据完好无损,而不被括号弄乱

我感谢你的帮助


谢谢大家!

这里有几种语法选择。使用代码示例中的一个,您忘记了VALUES关键字。例如:

declare @users table
(
    id uniqueidentifier,
    name varchar(50)
)
insert into @users values (newid(), 'BOB''S SELECT MARKETING')
如果要在表的每一列中插入一个值,也可以像下面那样使用insert into/select语句:

declare @users table
(
    id uniqueidentifier,
    name varchar(50)
)
insert into @users 
select newid(), 'BOB''S SELECT MARKETING'
或者,您可以使用insert into/select语句并指定要插入的列:

declare @users table
(
    id uniqueidentifier,
    name varchar(50)
)
insert into @users (id, name)
select newid(), 'BOB''S SELECT MARKETING'

您缺少关键字

INSERT INTO USERS VALUES (NEWID(),'BOB''S SELECT MARKETING');

这个字符串看起来非常非常错误。@graysheep您是如何对您的服务器执行此操作的?SSMS?客户端应用程序?如果它是一个客户端应用程序,我们可以看到该代码吗?如果在SSMS中直接运行此操作,会发生什么?SQL Server中没有任何内置内容会阻止您插入包含“SELECT”一词的字符串,因此您还有其他问题…@uvensten-该字符串完全正确Bob中的“”是为SQL Server检查撇号(单引号)的正确方法。由于标签的原因,我假设这是SQL Server。如果它是另一个RDBMS,那么您可能会发现一些问题。为什么不使用存储过程?您当然应该指定列名,但这不是一个先决条件,也不是OP插入失败的原因。是的,谢谢。您发表评论时,我已经在编辑我的回复了。:)嗯。为什么我没看到?抢手货还有用户之后的空间-不确定这是否重要,但你的是正确的。