如果我从一个源选择到另一个源,我可以同时指定排序规则吗?
例如
SELECT Column1, Column2
INTO DestinationTable
FROM SourceTable
Run Code Online (Sandbox Code Playgroud)
其中“DestinationTable”尚不存在。
我知道我可以做类似的事情
SELECT Column1, Column2 COLLATE Latin1_General_CI_AS
INTO DestinationTable
FROM SourceTable
Run Code Online (Sandbox Code Playgroud)
在我的实际问题中,事先不知道列的数据类型,因此我不能只将排序规则添加到每列。它位于遗留应用程序的一个角落,使用大型令人讨厌的存储过程来生成 SQL,我试图让它在 tempdb 中具有不同排序规则的新服务器上运行,只需进行最小的更改。
我正在寻找类似的东西:
SELECT Column1, Column2
INTO DestinationTable COLLATE Latin1_General_CI_AS
FROM SourceTable
Run Code Online (Sandbox Code Playgroud)
但这是行不通的。
可以先建表吗?
您可以为相关列定义排序规则。在 INSERT 时,它们将被强制。
听起来你不知道目标表的结构...所以那么不,你不能没有动态 SQL。这会让事情变得更糟......