intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Hướng Dẫn Thực Hành Winform - phần 5 ADO.NET (tt)

Chia sẻ: Harry Tran | Ngày: | Loại File: PDF | Số trang:8

308
lượt xem
144
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'hướng dẫn thực hành winform - phần 5 ado.net (tt)', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: Hướng Dẫn Thực Hành Winform - phần 5 ADO.NET (tt)

  1. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng HƯ NG D N TH C HÀNH TU N 5 Ch : ADO.NET (tt) Ph n 2: Các thao tác k t n i ADO.NET s d ng c u trúc dòng l nh v i namespace System.Data. (K t n i v i Database SQL Server) 1. Thi t k CSDL SQL Server như sau: a. T o databse v i tên DBHOCSINH, thi t k các table sau: HOCSINH STT Tên trư ng Ki u d li u Ghi chú 1 MaHS Nvarchar(20) PrimaryKey 2 TenHS Nvarchar(100) 3 NgaySinh Datetime 4 DiaChi Nvarchar(255) 5 DTB Real 6 MaLop Nvarchar(20) ForeignKey (tham chi u n Lop(MaLop) LOP STT Tên trư ng Ki u d li u Ghi chú 1 MaLop Nvarchar(20) PrimaryKey 2 TenLop Nvarchar(100) 3 SiSo smallint 2. T o project m i: Thi t k l i Form “K t n i CSDL SQL Server” như màn hình sau:
  2. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng Source code l p frmConnection using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace QLHocSinh { public partial class frmConnection : Form { //Khai báo bi n thành ph n public string sServerName = ""; public string sDatabaseName = ""; public string sUser = ""; public string sPass = ""; public frmConnection() { InitializeComponent(); } private void frmConnection_Load(object sender, EventArgs e) { txtServerName.Focus(); } private void cmdExit_Click(object sender, EventArgs e) { this.Close(); } private bool KiemTraDLHopLe() { if (txtServerName.Text.Trim().Length == 0)
  3. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng { MessageBox.Show("Chưa nh p tên máy ch .", "Thong bao loi", MessageBoxButtons.OK, MessageBoxIcon.Stop); return false; } if (txtDBName.Text.Trim().Length == 0) { MessageBox.Show("Chưa nh p tên CSDL.", "Thong bao loi", MessageBoxButtons.OK, MessageBoxIcon.Stop); return false; } return true; } private void cmdConnect_Click(object sender, EventArgs e) { if (!KiemTraDLHopLe()) return; sServerName = txtServerName.Text.Trim(); sDatabaseName = txtDBName.Text.Trim(); sUser = txtUser.Text.Trim(); sPass = txtPass.Text.Trim(); frmHocSinh frm = new frmHocSinh(); //Ki m tra k t n i CSDL if (!frm.connect(sServerName, sDatabaseName, sUser, sPass)) { MessageBox.Show("K t n i n máy ch không thành công.", "Thong bao loi", MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } MessageBox.Show("K t n i n máy ch thành công.", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information); frm.Show(); this.Hide(); } } }
  4. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng Thi t k form nh p thông tin h c sinh như sau: K t qu màn hình khi ch y: DataGridView
  5. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng k t n i v i CSDL SQL Server dùng namespace: using System.Data.SqlClient; Source code l p Màn hình nh p thông tin h c sinh: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace QLHocSinh { public partial class frmHocSinh : Form { private SqlConnection connection; private SqlDataAdapter adapter; private DataSet dataSet; private SqlCommand command; private string maHS, tenHS, diachi, malop; private float dtb; private DateTime ngaysinh; public frmHocSinh() { InitializeComponent(); } public bool connect(string sServerName, string sDBName, string sUser, string sPass) { string connnectionString = "server=" + sServerName + "; database=" + sDBName + "; user id=" + sUser + "; password=" + sPass; connection = new SqlConnection(connnectionString); try { connection.Open(); connection.Close(); return true; } catch { return false; } } private DataTable getDSLop() { adapter = new SqlDataAdapter("select * from LOP", connection); dataSet = new DataSet(); adapter.Fill(dataSet); return dataSet.Tables[0]; } private DataTable getDSHocSinh() {
  6. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng adapter = new SqlDataAdapter("Select h.MaHS, h.TenHS, h.NgaySinh, h.DiaChi, h.DiemTB, l.TenLop From HOCSINH h, LOP l Where h.MaLop=l.MaLop", connection); dataSet = new DataSet(); adapter.Fill(dataSet); return dataSet.Tables[0]; } private void DinhDangLuoi() { dgHocSinh.ReadOnly = true; dgHocSinh.Columns[0].HeaderText = "Mã HS"; dgHocSinh.Columns[0].Width = 70; dgHocSinh.Columns[1].HeaderText = "Tên HS"; dgHocSinh.Columns[1].Width = 150; dgHocSinh.Columns[2].HeaderText = "Ngày sinh"; dgHocSinh.Columns[2].Width = 90; dgHocSinh.Columns[3].HeaderText = " a ch "; dgHocSinh.Columns[3].Width = 200; dgHocSinh.Columns[4].HeaderText = " i m TB"; dgHocSinh.Columns[4].Width = 80; dgHocSinh.Columns[5].HeaderText = "L p"; dgHocSinh.Columns[5].Width = 80; } private void Form1_Load(object sender, EventArgs e) { //Load d li u vào comboBox L p DataTable dtLop = getDSLop(); cboLop.DataSource = dtLop; //Ch n item u tiên trong table cboLop.SelectedIndex = 0; // Column s ư c hi n th cboLop.DisplayMember = dtLop.Columns[1].ColumnName; // Column s ư c gi giá tr cboLop.ValueMember = dtLop.Columns[0].ColumnName; //Load danh sách h c sinh lên lư i dgHocSinh.DataSource = getDSHocSinh(); // nh d ng lư i DinhDangLuoi(); } private void getData() { maHS = txtMaHS.Text; tenHS = txtTenHS.Text; ngaysinh = dtNgaySinh.Value; diachi = txtDiaChi.Text; malop = (string)cboLop.SelectedValue; dtb = float.Parse(txtDiemTB.Text); } private void insert() { connection.Open(); string insertCommand = "INSERT INTO HOCSINH VALUES('" + maHS + "', '" +
  7. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng tenHS + "', '" + ngaysinh.ToShortDateString() + "', '" + diachi + "', " + dtb + ", '" + malop + "')"; command = new SqlCommand(insertCommand, connection); command.ExecuteNonQuery(); connection.Close(); } private void delete() { connection.Open(); string deleteCommand = "DELETE FROM HOCSINH WHERE MaHS = '" + maHS + "'"; command = new SqlCommand(deleteCommand, connection); command.ExecuteNonQuery(); connection.Close(); } private void btnXoa_Click(object sender, EventArgs e) { getData(); delete(); MessageBox.Show("Xoa du lieu thanh cong", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information); //Load lai danh sach hoc sinh len luoi dgHocSinh.DataSource = getDSHocSinh(); //Xoa du lieu tren cac textbox txtMaHS.Text = ""; btnNew_Click(sender, e); } private void btnThoat_Click(object sender, EventArgs e) { Application.Exit(); } private void btnLuu_Click(object sender, EventArgs e) { getData(); insert(); MessageBox.Show("Cap nhat thanh cong", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information); //Load lai danh sach hoc sinh len luoi dgHocSinh.DataSource = getDSHocSinh(); } private void txtMaHS_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == 13) SendKeys.Send("{TAB}"); } private void dgHocSinh_SelectionChanged(object sender, EventArgs e) { DataGridViewSelectedRowCollection rows = dgHocSinh.SelectedRows;
  8. Xây d ng ph n m m hư ng i tư ng GVHD: Tr n Anh Dũng if (rows.Count > 0) { DataGridViewRow row = rows[0]; txtMaHS.Text = row.Cells["MaHS"].Value.ToString(); txtTenHS.Text = row.Cells["TenHS"].Value.ToString(); if (row.Cells["NgaySinh"].Value.ToString().Length>0) dtNgaySinh.Value = DateTime.Parse(row.Cells["NgaySinh"].Value.ToString()); txtDiaChi.Text = row.Cells["DiaChi"].Value.ToString(); txtDiemTB.Text = row.Cells["DiemTB"].Value.ToString(); cboLop.Text = row.Cells["TenLop"].Value.ToString(); } } private void btnNew_Click(object sender, EventArgs e) { txtMaHS.Text = ""; txtTenHS.Text = ""; txtDiaChi.Text = ""; txtDiemTB.Text = ""; } } }
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2