你只是复制 .mdf 文件并附加它吗?当使用二进制数据时,我总是有点小心翼翼,因为这似乎是一个兼容性问题(尽管开发版和生产版应该始终同时运行相同版本的服务器)。
或者 - 鉴于 T-SQL 中缺少 "EXPLAIN CREATE TABLE" - 你是不是做一些将现有数据库导出为 SQL 脚本的事情,然后可以在目标服务器上运行这些脚本?如果是这样,是否有一个可以自动将给定的数据库转储为 SQL 查询并在命令行下运行的工具?(同样,Enterprise Manager/Management Studio Express 不算。)
最后 - 鉴于生产数据库已经包含数据,部署可能不涉及创建所有表,而是检查结构差异并 ALTER TABLE 生产版,而当现有字段更改时也可能需要数据验证/转换。
我听说 Red Gate 产品很棒,但对于业余项目来说,价格有点高。
那么,你们使用什么工具自动从测试环境部署 SQL Server 数据库到生产环境?