我希望你能就SQL脚本安装数据库的最佳实践提供意见。
问题A: 在我的脚本中,我有多个批次用于创建表格。 这些表格之间存在许多外键,目前必须按正确顺序排列批次以避免与外键表格冲突。 我想知道是否有一个好习惯,先创建没有外键的表格和所有列,然后在脚本末尾通过ALTER添加FK。
问题B: 我的脚本应用于在不同服务器上创建不同的DB。 每次安装时,数据库名称可能不同。 现在,在我的脚本中,我使用以下方式创建一个数据库:
问题A: 在我的脚本中,我有多个批次用于创建表格。 这些表格之间存在许多外键,目前必须按正确顺序排列批次以避免与外键表格冲突。 我想知道是否有一个好习惯,先创建没有外键的表格和所有列,然后在脚本末尾通过ALTER添加FK。
问题B: 我的脚本应用于在不同服务器上创建不同的DB。 每次安装时,数据库名称可能不同。 现在,在我的脚本中,我使用以下方式创建一个数据库:
CREATE DATABASE NameX
并且:
USE NameX
为了使用它。
因为我需要手动更新每个安装的脚本。我想有一种集中的方式来命名脚本内的数据库。 这样,改变一个简单的变量就会创建带有我的名称和所有USE语句的数据库。 我尝试使用局部变量,但没有成功,因为在GO语句之后它们超出了范围。 我没有任何使用sqlcmd和变量的经验。
有什么办法可以在我的脚本中解决这个问题吗? PS:我使用MS SQL 2008,我将在MS SMS中加载我的脚本
谢谢大家的帮助,这个社区真棒:-)