Sql server t-sql中的奇怪语法错误
我试图编写一个查询,从一个表中删除记录,并将删除的记录输出到另一个类似(但不完全相同)的表中 以下代码是我正在尝试执行的操作:Sql server t-sql中的奇怪语法错误,sql-server,tsql,Sql Server,Tsql,我试图编写一个查询,从一个表中删除记录,并将删除的记录输出到另一个类似(但不完全相同)的表中 以下代码是我正在尝试执行的操作: delete from MyServer.dbo.t1 output deleted.colA into MyServer.dbo.t2.colA 它引发错误,在sys.servers中找不到服务器“MyServer” 但是,我能够运行以下代码(基本上没有操作)(使用有效的服务器名称): 所以基本上t-sql的错误消息似乎没有意义——所以我不确定该怎么办 为什么t-s
delete from MyServer.dbo.t1
output deleted.colA into MyServer.dbo.t2.colA
它引发错误,在sys.servers中找不到服务器“MyServer”
但是,我能够运行以下代码(基本上没有操作)(使用有效的服务器名称):
所以基本上t-sql的错误消息似乎没有意义——所以我不确定该怎么办
在语法中使用3
时,指定的是server.database.schema.table
。您试图在末尾添加不起作用的列。去掉.colA
当您在语法中使用3
时,您指定的是服务器.database.schema.table
。您试图在末尾添加不起作用的列。扔掉.colA
谢谢!如何在没有“三点”语法的情况下指定列名?当我按照您的建议删除列A时,我得到的列名称或提供的值的数量与表定义不匹配,因为源表的列数比目标表的列数多。不幸的是,这是您尝试执行的操作的一个限制,您必须插入到与正在提取的架构匹配的表中。谢谢!如何在没有“三点”语法的情况下指定列名?当我按照您的建议删除列A时,我得到的列名称或提供的值的数量与表定义不匹配,因为源表的列数比目标表的多。不幸的是,这是您尝试执行的操作的一个限制,您必须插入到与您要提取的架构匹配的表中。
delete from MyServer.dbo.t1
output deleted.* into MyServer.dbo.t1