日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#增删改查操作Access数据库之二(数据库的增加)

發布時間:2023/12/18 C# 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#增删改查操作Access数据库之二(数据库的增加) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

功能:添加四個TextBox控件,在這四個控件中分別輸入要添加的ID,學號,姓名,年齡,性別信息,單擊Insert按鈕將數據添加到Access數據庫中并通過datagridview顯示添加后的數據庫。此外,設置了學號為主鍵,在添加數據到數據庫前要判斷一下是否已存在這樣的學號。

這里注意一下,我將OleDbConnection conn 設置為全局變量,并且只在show按鈕控件中調用了GetConnection()方法,所以想要連接數據庫只能首先單機show按鈕。

也可以在每一個按鈕控件中調用方法GetConnection()。

1.數據添加方法的實現

? ? ? ? public void DataInsert(TextBox TextBox1, TextBox TextBox2, TextBox TextBox3, TextBox TextBox4, TextBox TextBox5, OleDbConnection conn)
? ? ? ? {?
? ? ? ? ? ? if (CheckSameName(TextBox2)) ?//estimate whether there is same record
? ? ? ? ? ? {
? ? ? ? ? ? ? ? MessageBox.Show("不允許填寫相同記錄");
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? try
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? string sql = "insert into Student values ('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "')";
? ? ? ? ? ? ? ? ? ? OleDbCommand com = new OleDbCommand(sql, conn);
? ? ? ? ? ? ? ? ? ? // execute
? ? ? ? ? ? ? ? ? ? com.ExecuteNonQuery();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? catch (Exception ex)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? MessageBox.Show(ex.Message.ToString());
? ? ? ? ? ? ? ? }
?
? ? ? ? ? ? }
?
? ? ? ? }
這里將TextBox中輸入的數據作為參數傳遞給sql語句有兩種可行的方法,這兩種我都嘗試過了。如果有人知道哪種更優些,可以給我留言探討。
第一種:

? ? ? ? ? ? ? ? ? ? string sqlstr = "insert into Student (ID,[學號],[姓名],[年齡],[性別]) values(@ID,@StuNo,@StuName,@Age,@Gender)";
? ? ? ? ? ? ? ? ? ? OleDbCommand com = new OleDbCommand(sqlstr, conn);
? ? ? ? ? ? ? ? ? ? //add parameters and assign values
? ? ? ? ? ? ? ? ? ? com.Parameters.AddWithValue("@ID", TextBox1.Text);
? ? ? ? ? ? ? ? ? ? com.Parameters.AddWithValue("@StuNo", TextBox2.Text);
? ? ? ? ? ? ? ? ? ? com.Parameters.AddWithValue("@StuName", TextBox3.Text);
? ? ? ? ? ? ? ? ? ? com.Parameters.AddWithValue("@Age", TextBox4.Text);
? ? ? ? ? ? ? ? ? ? com.Parameters.AddWithValue("@Gender", TextBox5.Text);
第二種:
? ? ? ? ? ? ? ? ? ? string sql = "insert into Student values ('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "')";
? ? ? ? ? ? ? ? ? ? OleDbCommand com = new OleDbCommand(sql, conn);
2.判斷當前是否存在學號

? ? ? ? public bool CheckSameName(TextBox TextBox2)?
? ? ? ? {
? ? ? ? ? ? bool result = false;
? ? ? ? ? ? string sql = "select [學號] from Student where [學號]=@StuNo";
? ? ? ? ? ? OleDbConnection conn = GetConnection();
? ? ? ? ? ? conn.Open();
? ? ? ? ? ? OleDbCommand comd = new OleDbCommand(sql, conn);
? ? ? ? ? ? comd.Parameters.AddWithValue("@StuNo", TextBox2.Text);
? ? ? ? ? ? OleDbDataReader read = comd.ExecuteReader();
? ? ? ? ? ? if (read.HasRows)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? result = true;
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? result = false;
? ? ? ? ? ? }
? ? ? ? ? ? conn.Close();
? ? ? ? ? ? read.Close();
? ? ? ? ? ? return result;
? ? ? ? ? ? }

3.調用方法,顯示

? ? ? ? private void btn_Insert_Click(object sender, EventArgs e)
? ? ? ? {
? ? ? ? ? ? conn.Open();
? ? ? ? ? ? try
? ? ? ? ? ? {
? ? ? ? ? ? ? ? opera.DataInsert(textBox1, textBox2, textBox3, textBox4, textBox5, conn);
? ? ? ? ? ? ? ? DataDisplay();
? ? ? ? ? ? }
? ? ? ? ? ? catch (Exception ex)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? MessageBox.Show(ex.ToString());
? ? ? ? ? ? }
? ? ? ? ? ? finally
? ? ? ? ? ? {
? ? ? ? ? ? ? ? conn.Close();
? ? ? ? ? ? }
? ? ? ? }
最終結果如下。

總結

以上是生活随笔為你收集整理的C#增删改查操作Access数据库之二(数据库的增加)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。