在.Net中准备SELECT语句
本文关键字:SELECT 语句 Net | 更新日期: 2023-09-27 17:58:18
我不明白我做错了什么,我似乎无法用准备好的语句进行SELECT。不过,我可以插入一个事先准备好的语句。
MySqlCommand cmd = new MySqlCommand("SELECT * FROM code_post WHERE name = ?postRequired LIMIT 1", dbcon);
cmd.Parameters.Add(new MySqlParameter("?postRequired", requestString));
cmd.ExecuteNonQuery();
DataSet ds = new DataSet();
cmd.fill(ds, "result");
try {
thisBlog = ds.Tables["result"].Rows[0];
} catch {
invalid();
return;
}
如有任何建议,我们将不胜感激!
要填充数据集,您需要一个DataAdapter。
试试这个:
MySqlCommand cmd = new MySqlCommand("SELECT * FROM code_post WHERE name = ?postRequired LIMIT 1", dbcon);
cmd.Parameters.Add(new MySqlParameter("?postRequired", requestString));
cmd.ExecuteNonQuery();
DataSet ds = new DataSet();
MySqlDataAdapter dAdap = new MySqlDataAdapter();
dAdap.SelectCommand = cmd;
dAdap.Fill(ds, "result");
try {
thisBlog = ds.Tables["result"].Rows[0];
} catch {
invalid();
return;
}
您需要使用SqlDataAdapter
DataAdapter
表示用于填充DataSet
和更新SQL Server数据库的一组数据命令和数据库连接。
SqlDataAdapter
通过映射Fill来提供此桥接,Fill会更改数据集中的数据以匹配数据源中的数据
检查以下语法:
private static DataSet SelectRows(DataSet dataset,
string connectionString,string queryString)
{
using (SqlConnection connection =
new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(
queryString, connection);
adapter.Fill(dataset);
return dataset;
}
}