SSDT VS2012迁移到Azure语法错误

时间:2014-01-23 11:35:25

标签: sql sql-server visual-studio-2012 azure

我试图自动将SQL Server 2008 R2数据库发布到SQL Azure。我通过Visual Studio 2012使用SQL Server数据库工具(SSDT),并且能够获得模式迁移。我有一个单独的SSIS包来迁移数据。

我遇到的问题是SSDT将Azure数据库创建为Web 1GB数据库,我尝试使用以下代码将其转换为Business 10GB数据库:

ALTER DATABASE TestDataase MODIFY(EDITION='Business', MAXSIZE=10GB)

如果我在Management Studio中执行它,此代码有效,但是当我将脚本放入VS并尝试构建项目时,我得到3个错误:

SQL80001: Incorrect syntax near '('.  Expecting FILE, ID or LOG_ON
SQL80001: Incorrect syntax near 'EDITION'.  Expecting '(' or SELECT

我已尝试将脚本作为脚本包含在构建中,这会添加以下错误

SQL70001: This statement is not recognized in this context

并将其作为一个后期部署脚本,允许项目构建正常,但是当我部署它时,它失败并显示消息:

An error occurred while the batch was being executed

任何人都有任何想法,我出错了吗?

希望你能帮忙

由于

亚历

1 个答案:

答案 0 :(得分:0)

在做了一些挖掘和测试后,我找出了问题所在。我连接到我想要更改的数据库而不是master数据库。显然Azure不允许使用USE Database命令,所以我在加载数据的SSIS包的开头添加了脚本及其自己的连接细节。

非常感谢。