使用 SQL 脚本手动创建或升级 BarTender 系统数据库
问题
如何使用 SQL 脚本手动创建或升级 BarTender 系统数据库?
解答
在某些情况下,您可能希望通过 SQL 脚本手动创建或升级 BarTender 系统数据库,比如当第三方供应商或管理员负责管理您的 SQL Server 数据库时,您不希望安装 BarTender 来创建或升级系统数据库。
创建系统数据库
您可以通过以下方式手动创建 BarTender 系统数据库(无需使用系统数据库向导)。需要从 BarTender 主安装目录中复制两个文件(64 位 BarTender 路径为 C:\Program Files\Seagull\BarTender Suite\Database,32 位 BarTender 路径为 C:\Program Files (x86)\Seagull\BarTender Suite\Database):
- CreateDatabase.bat
- CreateDb.sql
这些文件需要复制到运行 SQL Server 的计算机/主机的某个目录下。CreateDatabase.bat 是一个批处理文件,用于创建系统数据库,可以在命令提示符或 Windows Powershell 窗口中执行。
以下是创建系统数据库的命令和参数:
-
CreateDatabase.bat <SqlInstance> [Database Name] [schema only flag] [path]
- 参数说明:
- <SqlInstance> (必填)为目标 SQL Server 的实例名。实例名可能还需要包含计算机名。例如,IEPC2\SqlExpress 表示 IEPC2 计算机上的 'SqlExpress' 实例。如果只使用默认实例,可以只填写计算机/服务器名。
- [Database Name] (可选)为数据库名称。如果省略此参数,则默认使用 'BarTender'。
- [schema only flag] (可选)如设置为 "true",则只在已有数据库文件上创建数据库结构。
- [path] (可选)为数据库物理文件的存放路径。
- 参数说明:
-
CreateDatabase /? - 显示帮助信息
-
CreateDatabase /L - 显示网络上可用的 SQL Server 列表
-
CreateDatabase /E - 显示示例命令行。
示例:
- CreateDatabase.bat <InstanceName> (其中 InstanceName 是 SQL Server 的实例名,例如:“IEPC2\SqlServer”。)这将创建一个默认名为 "BarTender" 或 "SystemDB"(取决于 BarTender 版本)的系统数据库。
升级系统数据库
用于升级系统数据库的 SQL 脚本同样位于 BarTender 安装目录下(64 位 BarTender 路径为 C:\Program Files\Seagull\BarTender Suite\Database,32 位 BarTender 路径为 C:\Program Files (x86)\Seagull\BarTender Suite\Database)。这些文件名通常为 UpgradeDB.sql 到 UpgradeDB_1.x_to_1.y.sql。同样需要将这些脚本复制到运行 SQL Server 的计算机/主机的某个目录下。
升级步骤如下:
- 使用 Admin Console 或系统数据库界面查看当前系统数据库结构的版本号——应显示为 "1.x"。
- 在 SQL Server Management Studio 中,按顺序打开并运行所有 UpgradeDB_1.x_to_1.y.sql 脚本,从与当前结构版本号相对应的脚本开始。例如,如果当前结构为 1.30,则先运行 "UpgradeDB_1.30_to_1.40.sql",然后依次运行更高版本的脚本。请注意,每个 UpgradeDB 脚本中都使用了参数 [$(dbname)],需要将其替换为系统数据库的实际名称。