我有一个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?
谢谢!
答案 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。