3
使用ExecuteCommand我要執行我的數據庫語句:在LINQ
/*Disable Constraints & Triggers*/
exec sp_MSforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
exec sp_MSforeachtable 'ALTER TABLE ? DISABLE TRIGGER ALL'
/*Perform delete operation on all table for cleanup*/
exec sp_MSforeachtable 'SET QUOTED_IDENTIFIER ON; DELETE ?'
/*Enable Constraints & Triggers again*/
exec sp_MSforeachtable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
exec sp_MSforeachtable 'ALTER TABLE ? ENABLE TRIGGER ALL'
/*Reset Identity on tables with identity column*/
exec sp_MSforeachtable 'IF OBJECTPROPERTY(OBJECT_ID(''?''), ''TableHasIdentity'') = 1 BEGIN DBCC CHECKIDENT (''?'',RESEED,0) END'
我有我的LINQ的DataContext:
public static bool ClearDatabase()
{
GetContext().ExecuteCommand("");
}
說不清楚在MSDN文檔是零件...我是否應該將每個語句作爲單獨的命令運行,還是要執行一個很長的字符串?
我是否應該保留exec語句?另外,如果有人知道用LINQ清除數據庫的更好方法,請告訴我。
感謝
您可以測試您是否可以在一個命令中執行多個語句。您可以爲其設置SQL分析器並查看由LINQ to SQL生成的SQL查詢。 – polkduran 2013-04-23 12:45:49