Sql server 靠近'的语法不正确;在';
在这里,我试图设置一个条件,如果该表已经存在于数据库中,如果它不存在,我想创建一个表 但是,如果我运行这个查询,我会得到错误 “ON”附近的语法不正确 靠近“END”的语法不正确Sql server 靠近'的语法不正确;在';,sql-server,tsql,Sql Server,Tsql,在这里,我试图设置一个条件,如果该表已经存在于数据库中,如果它不存在,我想创建一个表 但是,如果我运行这个查询,我会得到错误 “ON”附近的语法不正确 靠近“END”的语法不正确 将包含GO的语句放在IF语句之前 IF ( NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND
将包含
GO
的语句放在IF
语句之前
IF ( NOT EXISTS (SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'OeeQualityDefects'))
BEGIN
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[OeeQualityDefects](
[CharID] [int] NOT NULL,
[QualityCharID] [int] NULL
) ON [PRIMARY]
END
GO
结束语句,IF语句中断。将包含GO
的语句放在IF
语句之前
IF ( NOT EXISTS (SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'OeeQualityDefects'))
BEGIN
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[OeeQualityDefects](
[CharID] [int] NOT NULL,
[QualityCharID] [int] NULL
) ON [PRIMARY]
END
GO
结束一条语句,如果语句中断,语句将终止。是否更改查询?@user3008105否它不会更改您的查询它只会在启动Sql事务之前更改Sql Server设置,当您试图在事务的中间更改设置时,是否更改查询?@ USER88105不,它不会更改查询,它只会在启动SQL事务之前更改SQL Server设置,当您试图在事务中间更改设置时,“Go”不是SQL语法,它是SSM中的批处理分隔符,所以如果在SQL事务的任何地方使用它,SQL Server将不识别它并抛出和出错。“Go”不是SQL语法,它是SSMS中的批处理分隔符,因此,如果在SQL事务的任何地方使用它,SQLServer将无法识别它并抛出错误。