我與EF 6
我是否需要明確地添加SET ANSI_NULLS上的EntityFramework遷移
string sqlQuery = @"
/****** Object: StoredProcedure [dbo].[GetSalesByLocation] Script Date: 9/21/2016 8:32:36 AM ******/
SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER ON GO
CREATE PROCEDURE [dbo].[GetSalesByLocation]
@MerchantID bigint,
@LocationID bigint,
@AccountAccessID bigint,
@KioskID bigint,
@StartDate DATETIME,
@EndDate DATETIME
AS
BEGIN
.....
END
GO";
Sql(sqlQuery);
寫遷移stored procedure
當我嘗試運行Update-database
命令我得到以下錯誤
Incorrect syntax near 'GO'.
Incorrect syntax near 'GO'.
'CREATE/ALTER PROCEDURE' must be the first statement in a query batch.
Incorrect syntax near 'GO'.
此外,當我創建SP
沒有
SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER ON GO
並打開SQL管理工作室我可以看到上面的語句自動添加。
所以我的問題是,如果我正在爲存儲過程編寫遷移,我需要`顯式設置ansi null?
你可以顯示你的'OnModelCreating()'方法嗎? – Sampath
注意:在T-SQL中寫東西時,「GO」應該在自己的行上。也就是說,'GO'不是嚴格的T-SQL(請參閱這裏的評論:https://msdn.microsoft.com/en-us/library/ms188037.aspx),所以我不確定你甚至可以創建這樣的程序。編輯:至於手頭的問題,這取決於你的設置。當你有正確的設置時,並不是絕對必要的,但爲了以防萬一,這可能是一個好習慣。 – ZLK
@Sampath:存儲過程 –