azure数据库管理门户中的sql语法错误

时间:2015-02-07 15:10:24

标签: sql .net sql-server azure

我有一个SQL服务器数据库脚本文件,我试图上传到Azure。

当我在SQL Server Management Studio中执行此脚本时,它运行时没有任何错误。但是,当我在azure管理门户中打开文件并执行它时,我得到语法错误:

  

Msg 156,Level 15,State 1,Line 296
  关键字' ALTER'附近的语法不正确。

第296行的代码是:

ALTER TABLE [dbo].[CarsForRent]  WITH CHECK 
   ADD CONSTRAINT [FK_CarsForRent_CarTypes] FOREIGN KEY([CarTypeID])

第二个错误:

  

Msg 4917,Level 16,State 0,Line 299
  约束' FK_CarsForRent_CarTypes'不存在。

第299行的代码是:

ALTER TABLE [dbo].[CarsForRent] CHECK CONSTRAINT [FK_CarsForRent_CarTypes]

和第三个错误:

  

Msg 4916,Level 16,State 0,Line 299
  无法启用或禁用约束。查看以前的错误。

我唯一的猜测是azure管理门户网站不支持所有SQL语句。

如何修复我的代码,以便将数据库上传到azure?

谢谢!

2 个答案:

答案 0 :(得分:0)

我认为在创建外键时,您缺少一个重要的部分。

ALTER TABLE [dbo].[CarsForRent]  WITH CHECK 
ADD CONSTRAINT [FK_CarsForRent_CarTypes] FOREIGN KEY([CarTypeID])
REFERENCES TableName(ColumnName)    --<-- the table and column this FK 
                                       -- is referrencing to 

答案 1 :(得分:0)

最终我使用了从SQL Server“部署数据库到SQL Azure”工具。 右键单击DB&gt;任务&gt;将数据库部署到SQL Azure。