我有关于ADOX的错误,我不知道如何解决。
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;
说明的错误是'方法'没有重载'打开'需要一个参数。这里有什么样的灵魂可以帮助我吗?感谢
答案 0 :(得分:2)
基本上在这一行:
sConn.Open("server=localhost; Data Source = " + strFileName + ";user id=root;Password=1;database=test;persist security info=False");
您没有正确调用此功能。 open函数不接受连接字符串。
您应该在创建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();
希望有所帮助。
答案 1 :(得分:1)
MySql.Data.MySqlClient.MySqlConnection.Open(string 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();