我有一个需要还原到SQL2008实例的SQL2005数据库。
我读过“生成脚本.”向导,为SQL2005兼容性设置它,并生成一个62 it的SQL脚本。
当我在SQL2005实例上运行它时,它会抛出各种错误,其中一些错误非常奇怪,因为它们描述了一个无效的数据库。
知道怎么会发生这种事吗?此SQL脚本是由在我试图还原它的几分钟前生成的,并且没有被修改。
为什么这会生成无效的SQL文件?它不是仅仅描述了SQL2008数据库,因为我们正在使用它,它大概是有效的吗?
特别是,重复的键插入错误使我感到困惑。如果SQL脚本中有一个键约束,那么SQL2008表中必须有相同的内容。那么,我们如何才能在其中得到违反键约束的行呢?
这与SQL2005的退步有关。我运行脚本以与SQL2008兼容,然后转身,在它刚发出的同一个SQL实例上运行生成的脚本,并且它运行时没有出错。因此,当我试图使它与SQL2005兼容时,问题就出现了。
我重新创建了脚本,使其与SQL2005兼容,然后转身在SQL2008实例上运行它。效果很好。所以..。
您不能为SQL2005创建脚本并在Express上运行它。我换了标准版,效果很好。
发布于 2010-04-09 19:41:14
问题是我试图导入到SQL2005Express。我切换到SQL2005Standard,并且能够运行脚本而没有出错。
发布于 2010-04-09 15:56:32
我不知道这现在是否内置于SQLServer2008ManagementStudio,但是在2005年,如果使用单独的下载,Server数据库发布向导获得了更多的选项:微软下载中心
这对你有帮助。
https://serverfault.com/questions/130977
复制相似问题