我需要将一些表格(16个表格)传输到另一个数据库中,并且有许多存储过程(200个表格)使用这些表格。
不建议将存储过程传输到另一个数据库中。
对于我的情况:
dbA
包含 sp_xyz
存储过程,tableB
和 tableC
表格。
sp_xyz
的内容可能是:
SELECT A.column1, B.column2
FROM
tableB A
JOIN tableC B ON A.fk_b_id = B.id
我们希望将
tableC
传输到数据库 dbB
。那么我应该如何在最小程度上更改此存储过程呢?
sp_
作为存储过程的前缀。它被保留供Microsoft使用(它代表“系统过程”,而不是存储过程),并且它们比其他名称访问速度慢(因为在当前数据库之前会搜索master
)。通常,在SQL中,您不应需要为对象使用前缀 - 只需查询或语句中对象的位置即可告诉您它是什么类型的对象(例外:表和视图 - 但它们应该可以互换) - Damien_The_Unbeliever