我使用 Visual Studio 的Database Publishing Wizard将我的数据库表和整个架构备份到 .sql 脚本中。
然后,我尝试在另一台 PC 上重新创建这些表,而不是在重新创建数据库之前,使用相同的名称和所有内容(使用我通过 SSMS 的Script Database as)
.
然后,我使用 SSMS 打开该表 .sql 文件并执行它。
SSMS 报告:
命令成功完成
但是检查对象资源管理器会发现没有创建任何表。
为什么会这样?
我错过了什么?
我使用 Visual Studio 的Database Publishing Wizard将我的数据库表和整个架构备份到 .sql 脚本中。
然后,我尝试在另一台 PC 上重新创建这些表,而不是在重新创建数据库之前,使用相同的名称和所有内容(使用我通过 SSMS 的Script Database as)
.
然后,我使用 SSMS 打开该表 .sql 文件并执行它。
SSMS 报告:
命令成功完成
但是检查对象资源管理器会发现没有创建任何表。
为什么会这样?
我错过了什么?
我刚刚使用 Visual Studio 的数据库发布向导也遇到了完全相同的问题症状,但原因/修复略有不同。
尽管 SQL Server Management Studio 说它已连接到正确的数据库(在功能区的下拉菜单中,以及窗口的状态栏中),但它实际上并没有连接到任何东西。
要识别和修复:
SELECT DB_NAME() AS DataBaseName
如果你得到
master
(或任何其他意外的数据库名称)作为结果,那么您连接到错误的数据库,应该从下拉列表中选择正确的数据库。这是你的问题的原因。
如果你得到
Command(s) completed successfully
然后不知何故你根本没有连接 - 这发生在我身上。
要修复,请单击“更改连接”按钮断开连接并重新连接。
检查您是否选择了数据库。大多数时候我们错误地在 Master db 中执行查询。
-- 如果此答案确实回答了您的问题,则标记为已回答
检查您是在运行“执行”还是在解析代码。那是一个深夜,我累了,一直运行查询创建表,成功,但没有新表。第二天,头脑清晰,我注意到我实际上并没有运行查询,我正在解析它。