1
由于我有很多数据库,我想通过它们循环执行他们每个人的linq查询/更新。跨数据库查询,循环数据库
是否有可能像做
foreach(var r in master.sysdatabases)
{
from b from r.chicken
select b.age;
}
我有跨数据库支持的高级版。
由于我有很多数据库,我想通过它们循环执行他们每个人的linq查询/更新。跨数据库查询,循环数据库
是否有可能像做
foreach(var r in master.sysdatabases)
{
from b from r.chicken
select b.age;
}
我有跨数据库支持的高级版。
我能够像这样解决它,但我真的不喜欢使用字符串连接查询。
var r = (from b in Sysdatabases select b.Name).ToList();
foreach(var i in r)
{
try{
var o = ExecuteQuery<string>("select urls from "+i+".dbo.website_setting");
Console.WriteLine(o);
}
catch(Exception){}
}
的尝试,执行是如果表不存在(master数据库等)
如果所有数据库都具有相同的“鸡”的表,你可以这样做:
var builder = new SqlConnectionStringBuilder (Connection.ConnectionString);
foreach (var db in sys.Databases)
{
builder.InitialCatalog = db.Name;
var dc = new TypedDataContext (builder.ToString());
try
{
var query =
from b in dc.Chickens
select b.Age;
query.Dump();
}
catch { ... }
}
不起作用。没有这样的事情sys.Databases,我试图在主数据库中的视图(sysdatabases),然后我得到dc.Chickens错误 – hreinn1000 2012-07-23 10:00:16
右键单击连接,属性。选中“包含系统视图和SP” – 2012-07-24 13:14:42