Hướng Dẫn Thực Hành Winform - phần 5 ADO.NET (tt)
lượt xem 144
download
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ả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Hướng Dẫn Thực Hành Winform - phần 5 ADO.NET (tt)
- 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:
- 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)
- 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(); } } }
- 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
- 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() {
- 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 + "', '" +
- 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;
- 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 = ""; } } }
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Hướng dẫn thực hành Winforms với C#
8 p | 778 | 245
-
Hướng Dẫn Thực Hành Winform với C# - phần 1
6 p | 579 | 194
-
Hướng Dẫn Thực Hành Winform với C# - phần 1 (tt)
5 p | 506 | 170
-
Hướng Dẫn Thực Hành Winform - phần 8 Hướng dẫn Crystal Report – Tạo báo cáo)
13 p | 476 | 170
-
Hướng Dẫn Thực Hành Winform - phần 3 ADO.NET
5 p | 453 | 157
-
Hướng Dẫn Thực Hành Winform - phần 4 ADO.NET (tt)
8 p | 314 | 152
-
Hướng Dẫn Thực Hành Winform - phần 7 Thiết kế và xây dựng phần mềm theo mô hình 3 tầng xử lý
8 p | 327 | 151
-
Hướng Dẫn Thực Hành Winform - phần 6 Thiết kế và xây dựng phần mềm theo mô hình 2 tầng xử lý
8 p | 389 | 140
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn