我创建了win表单,我想插入sql命令并从数据库中获取数据。如果我将查询直接放入代码sql命令,一切都很好,如果我按文本框查询我有很多错误,如:
$例外{"无法找到存储过程'从uczniowie中选择*'。"}
System.Exception {System.Data.SqlClient.SqlException} 这个{MateuszLab4.connectDB} MateuszLab4.connectDB 问题" \"选择*来自uczniowie \""串 dataTable {} System.Data.DataTable sqlDataReader null System.Data.SqlClient.SqlDataReader sqlCommand {System.Data.SqlClient.SqlCommand} System.Data.SqlClient.SqlCommand
这是我的代码:
private void buttonSearch_Click(object sender, EventArgs e)
{
string query = textBoxQuery.Text;
connectDB databaseWin = new connectDB("(localdb)\\v11.0", "Mat");
dataGridViewAdvanced.DataSource = databaseWin.DataDownload(query);
}
当我输入字符串查询sql命令时(例如字符串查询="从学生中选择*")一切都运行良好。如果我用文本框中的数据替换某事是错误的。你能给我一些提示吗?
这是我的课程,其中包括dat intaa:
public DataTable DataDownload(string question)
{
DataTable dataTable = new DataTable();
SqlDataReader sqlDataReader;
SqlCommand sqlCommand;
sqlCommand = new SqlCommand(question);
sqlCommand.Connection = this.DBconnection;
sqlDataReader = sqlCommand.ExecuteReader();
dataTable.Load(sqlDataReader);
return dataTable;
}
答案 0 :(得分:0)
Try this code.
public DataTable DataDownload(string question)
{
using (var ada = new SqlDataAdapter(question, DBconnection))
{
// Use DataAdapter to fill DataTable
DataTable dt = new DataTable();
ada.Fill(dt);
return dt;
}
}