2012-07-09 102 views
2

我有关于ADOX的错误,我不知道如何解决。方法'打开'没有超载需要1个或多个参数

enter code here public static string[] GetTableExcel(string strFileName) 
     { 
      string[] strTables = new string[100]; 
      Catalog sCatalog = new Catalog(); 
      ADOX.Table sTable = new ADOX.Table(); 
      MySql.Data.MySqlClient.MySqlConnection sConn = new MySql.Data.MySqlClient.MySqlConnection(); 
      sConn.Open("server=localhost; Data Source = " + strFileName + ";user id=root;Password=1;database=test;persist security info=False"); 
      sCatalog.ActiveConnection = sConn; 
      if (sCatalog.Tables.Count > 0) 
      { 
       int item = 0; 
       foreach (ADOX.Table tab in sCatalog.Tables) 
       { 
        if (tab.Type == "TABLE") 
        { 
         strTables[item] = tab.Name; 
         item++; 
        } 
       } 
      } 
      return strTables; 

声明的错误是'方法'打开'没有超载有一个参数。这里的任何善良的灵魂都可以帮助我?由于

回答

1

MySql.Data.MySqlClient.MySqlConnection.Open(字符串connStr)不可用,你应该叫

MySql.Data.MySqlClient.MySqlConnection sConn = new MySql.Data.MySqlClient.MySqlConnection("server=localhost; Data Source = " + strFileName + ";user id=root;Password=1;database=test;persist security info=False"); 
sConn.Open(); 
2

基本上在这一行:

sConn.Open("server=localhost; Data Source = " + strFileName + ";user id=root;Password=1;database=test;persist security info=False"); 

你是不是正确调用该函数。打开的函数不接受连接字符串。

,当您创建的MySqlConnection实例时,应提供连接字符串,如下图所示:

MySql.Data.MySqlClient.MySqlConnection sConn = new MySql.Data.MySqlClient.MySqlConnection("server=localhost; Data Source = " + strFileName + ";user id=root;Password=1;database=test;persist security info=False"); 

然后调用open函数如下:

sConn.Open(); 

希望有所帮助。

相关问题