StudentID > Number
StudentName > Text
StudentCNIC > Text
StudentDOB > Date/Time
我試圖創建一個搜索文本框,其中的結果顯示在文本框中。我有一個叫做FindBtn的按鈕,其中用戶輸入StudentID,學生姓名或學生CNCI(只是疼痛數字)。結果將顯示在文本框... StudIDTb(顯示學生ID),StudNameTb(顯示學生姓名),StudCNCITb(顯示學生CNCI)和StudDOBTb(顯示學生DOB)中。數據庫訪問搜索文本框
我在互聯網上看到的很多例子使用gridview,但我使用文本框來顯示結果。我已經找到感興趣的那些是...
public Form1()
{
InitializeComponent();
//Connection String for Access 2003.
myCon = new OleDbConnection(@" Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C....\StudDB.mdb ");
}
private void Form1_Load(object sender, EventArgs e)
{
this.studentsTableAdapter.Fill(this.studDBDataSet.Students);
}
在FindBtn功能做了以下....
private void FindBtn_Click(object sender, EventArgs e)
{
string title = textBox1.Text.ToString();
if (title != "")
{
string queryString = "SELECT * FROM Students + title;
//I need help here
StudIDTb.Text = queryString;
StudNameTb.Text = queryString;
StudCNCITb.Text = queryString;
StudDOBTb.Text = queryString;
}
else
MessageBox.Show("Please try again\nError: ");
}
結果表明。 ...
SELECT *
FROM Students 103
在每個文本框和EXE凍結,所以顯然這是錯誤的。請有人幫助我在這裏,提前謝謝。
UPDATE 1 我已經包括的OleDbCommand,的CommandType和只是字符串變量之前開口連接,其防止屏幕的凍結,但它並沒有解決問題
UPDATE 2 找到東西我喜歡,但它不工作 Here
更新3
作爲C語言尖角,友情提供的一段代碼....
private void btnFind_Click(object sender, EventArgs e)
{
string title = textBox1.Text.ToString();
string queryString = "SELECT * FROM Students" + title;
OleDbCommand command = new OleDbCommand();
command.CommandText = queryString;
command.Connection = myCon;
myCon.Open();
OleDbDataReader dr = command.ExecuteReader();
while (dr.Read())
{
StudIDTb.Text += String.Format("Student ID:
{0}\n",dr["StudID"].ToString());
StudNameTb.Text += String.Format("StudentName ID: {0}\n",
dr["StudentName"].ToString());
StudCNCITb.Text += String.Format("StudentCNIC: {0}\n",
dr["StudentCNIC"].ToString());
StudDOBTb.Text += String.Format("StudentCNIC: {0}\n",
dr["StudentCNIC"].ToString());
}
myCon.Close();
我修改格式化之後接收到錯誤....
「Microsoft Jet數據庫引擎無法找到輸入表或查詢 'Students101'。請確保它存在並且其名稱拼寫是否正確」。
我在看它現在要找出它意味着
這個錯誤是因爲你的查詢是錯誤的,你應該包括在查詢一些你的參數: 的queryString =「SELECT * FROM學生,其中StudentName =」 + txtStudentNameTb.Text +「或StudentCNIC =」+ txtStudentCNIC.Text 但這不是「安全」的方式,我對querys等知道不多,但是你應該google關於參數化querys的一些東西,應該有足夠的解釋 – 2013-03-09 20:04:26