1. 程式人生 > >數據庫中控件的數據輸入與輸出

數據庫中控件的數據輸入與輸出

mem 不能 第一條 取數據 ner fill command del area

知識點描述:

1、ListBox控件的Items中可以手動添加數據集合項。

2、ListBox控件可以綁定數據庫後輸出數據庫中的數據項

3、TextBox是文本框控件,在其中可輸入數據,也可以綁定數據庫後用來顯示數據庫中的數據

4、RadioButtion控件可用來提供由兩個或多個互斥選項組成的選項集。功能類似復選框,選擇某單選按鈕時,同一組中的其他單選按鈕不能同時選定。選中時其Checks屬性為true。

5、DateTimerPicker控件是日歷控件,通過點擊控件中的下拉箭頭即可選中日期。其Value為選中的日期。

思維導圖:

技術分享圖片

示例效果圖:

技術分享圖片

示例代碼:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
//添加調用:
using System.Data.SqlClient; //包含訪問SQL Server所需的各類對象;

namespace 控件練習
{

public partial class frm_StudentInfo : Form
{

/// <summary>
/// 公有方法:構造函數;
/// </summary>
public frm_StudentInfo()
{
InitializeComponent();
this.StartPosition = FormStartPosition.CenterScreen; //本窗體啟動位置設為屏幕中央;
}

/// <summary>
/// 私有方法:點擊載入按鈕;
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void 輸出_Click(object sender, EventArgs e)
{
SqlConnection sqlConnection = new SqlConnection(); //聲明並實例化SQL連接;
sqlConnection.ConnectionString =
"Server=(local);Database=EduBaseDemo;Integrated Security=sspi"; //在字符串變量中,描述連接字符串所需的服務器地址、數據庫名稱、集成安全性(即是否使用Windows驗證);
SqlCommand sqlCommand = new SqlCommand(); //聲明並實例化SQL命令;
SqlCommand sqlCommand2 = new SqlCommand(); //聲明並實例化SQL命令;
sqlCommand.Connection = sqlConnection; //將SQL命令的連接屬性指向SQL連接;
sqlCommand2.Connection = sqlConnection; //將SQL命令的連接屬性指向SQL連接;
sqlCommand.CommandText = "SELECT * FROM tb_Class;"; //指定SQL命令的命令文本;該命令查詢所有班級,以用作下拉框數據源;
sqlCommand2.CommandText = "SELECT * FROM tb_Student WHERE No=@No;"; //指定SQL命令的命令文本;該命令查詢指定學生;
sqlCommand2.Parameters.AddWithValue("@No", "3120707001"); //向SQL命令的參數集合添加參數的名稱、值;
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(); //聲明並實例化SQL數據適配器,同時借助構造函數,將其SelectCommand屬性設為先前創建的SQL命令;
sqlDataAdapter.SelectCommand = sqlCommand; //將SQL數據適配器的查詢命令屬性指向SQL命令;
DataTable classTable = new DataTable(); //聲明並實例化數據表,用於保存所有班級,以用作下拉框數據源;
sqlConnection.Open(); //打開SQL連接;
sqlDataAdapter.Fill(classTable); //SQL數據適配器讀取數據,並填充班級數據表;
this.cmb_Class.DataSource = classTable; //將班級下拉框的數據源設為班級數據表;
this.cmb_Class.DisplayMember = "Name"; //將班級下拉框的顯示成員設為班級數據表的名稱列;
this.cmb_Class.ValueMember = "No"; //將班級下拉框的值成員設為班級數據表的編號列;
SqlDataReader sqlDataReader = sqlCommand2.ExecuteReader(); //調用SQL命令的方法ExecuteReader來執行命令,並獲取數據閱讀器;
if (sqlDataReader.Read()) //若數據閱讀器成功讀取到下一條記錄(首次查詢則表示第一條記錄);
{
this.txb_No.Text = sqlDataReader["No"].ToString(); //在數據閱讀器的索引器中指定列名,從而訪問當前記錄的指定列的值,並賦予相應控件;
this.txb_Name.Text = sqlDataReader["Name"].ToString();
this.rdb_Male.Checked = (bool)sqlDataReader["Gender"];
this.rdb_Female.Checked = !(bool)sqlDataReader["Gender"];
this.dtp_BirthDate.Value = (DateTime)sqlDataReader["BirthDate"];
this.cmb_Class.SelectedValue = (int)sqlDataReader["ClassNo"];
this.txb_Speciality.Text = sqlDataReader["Speciality"].ToString();
}
sqlDataReader.Close(); //關閉數據閱讀器(同時關閉連接);
}
}
}

數據庫中控件的數據輸入與輸出