1

尝试使用适配器使用来自 MySQL 查询的数据填充数据表时出现错误。

VisualStudio 告诉我错误,“输入字符串格式不正确”,与adapter.Fill(myDataTable);(该过程只是一个基本的选择语句,它返回一些带有文本、varchar 和日期时间值的行。)

该方法是这样调用的:GetDataTable("CALL SomeProc()");

public static DataTable GetDataTable(string query)
{
    string ConnString = ConfigurationManager.ConnectionStrings["randomconnstr"].ConnectionString.ToString();
    MySqlConnection conn = new MySqlConnection(ConnString);
    MySqlDataAdapter adapter = new MySqlDataAdapter();
    adapter.SelectCommand = new MySqlCommand(query, conn);

    DataTable myDataTable = new DataTable();

    conn.Open();
    try
    {
        adapter.Fill(myDataTable);
    }

    finally
    {
        conn.Close();
    }
    return myDataTable;
}
4

2 回答 2

1

尝试改变这个

GetDataTable("CALL SomeProc()");

对此:

GetDataTable("SomeProc");
于 2013-01-29T16:00:53.923 回答
1

您缺少引号,看起来您没有关闭字符串。

GetDataTable(@"CALL SomeProc()");

编辑 **

尝试添加这个:-

adapter.SelectCommand.CommandType = CommandType.StoredProcedure;
于 2013-01-29T16:18:48.490 回答