我在四个不同的生产服务器上安装了一个数据库。每个服务器都有自己不同的用户。当我在这些服务器上使用create语句创建新表时,每个服务器都设置/预先设置其用户名,例如
Create Table tab_1 ...
将创建为
使用abc.tab_1
作为登录信息的server_1上的abc
使用def.tab_1
作为登录信息的server_2上的def
使用ghi.tab_1
作为登录信息的server_3上的ghi
使用jkl.tab_1
作为登录信息在server_4上jkl
我想使用dbo
作为默认架构,并且必须在每个服务器上为每个新表使用以下语句
ALTER SCHEMA dbo TRANSFER login.table_name;
有没有办法修改Create Table
语句或在所有服务器上创建每个表的其他设置dbo.table_name
我使用的是共享托管,SSMS有很多限制,因此基于查询的解决方案是合适的。
答案 0 :(得分:3)
您可以控制创建表查询吗?在这种情况下,只需在create:
中指定dboCREATE TABLE dbo.dummy();
要更改用户的默认架构,请参阅以下答案:https://stackoverflow.com/a/8208124/3480246