日期:2014-05-18  浏览次数:20678 次

获取所有数据库及表名
private void GetTabels_DMO(string strServerName, string strUser, string strPWD, string strDatabase)
  {
  SQLDMO.Backup backup = new SQLDMO.BackupClass(); 
  SQLDMO.SQLServer Server = new SQLDMO.SQLServerClass();  
  //连接到服务器
  Server.Connect(strServerName, strUser, strPWD);
  //对所有的数据库遍历,获得指定数据库
  for (int i = 0; i < Server.Databases.Count; i++)
  {
  //判断当前数据库是否是指定数据库
  if (Server.Databases.Item(i + 1, "dbo").Name == strDatabase)
  {
  //获得指定数据库
  SQLDMO._Database db = Server.Databases.Item(i + 1, "dbo");
  //获得指定数据库中的所有表
  for (int j = 0; j < db.Tables.Count; j++)
  {
  Console.WriteLine(db.Tables.Item(j + 1, "dbo").Name);
  }
  }
  }

怎么会出现这样的错误:
错误 1 无法嵌入互操作类型“SQLDMO.BackupClass”。请改用适用的接口。
是不是微软的软件升级了,接口变了。


------解决方案--------------------
探讨

我从新引用了的,还是报这个错误…………

------解决方案--------------------
剩下的不会了 搜搜看吧
http://www.baidu.com/s?wd=%5BMicrosoft%5D%5BODBC+SQL+Server+Driver%5D%5BDBNETLIB%5DSQL+Server+%B2%BB%B4%E6%D4%DA%BB%F2%B7%C3%CE%CA%B1%BB%BE%DC%BE%F8&rsv_bp=0&rsv_spt=3&rsv_n=2&inputT=573