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