2012-07-09 93 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(); 

希望有所幫助。

相關問題