Nếu bạn là một YouTuber chuyên nghiệp thì bạn sẽ phải luôn đối mặt với tình trạng hết dung lượng ổ đĩa do làm việc với nhiều file video chất lượng cao. Điển hình là tôi đây, thường hay gặp phải lỗi này " Not enough free space on disk " do quá tải các file cache của phần mềm biên tập video gây ra. Tôi đã có cách nhanh để khắc phục vấn đề này! Lỗi tiêu hao dung lượng ổ đĩa trong máy tính thường do các phần mềm biên tập ảnh, video chất lượng cao... gây nên, chính vì thế một khi chúng ta thấy ổ đĩa đầy lên bất thường mà trước đó không cài đặt bất cứ phần mềm nào thì hãy dùng cách khắc phục sau nhé! Bước 1 : Truy cập đến thư mục lưu các file tạm của phần mềm biên tập, chẳng hạn như AVSVideoEditor . C:\Users\Administrator\Appdata\Roaming\AVS4YOU\AVSVideoEditor\Temp Bước 2 : Tiến hành xóa các thư mục chứa file video tạm của phần mềm biên tập video là coi như xong!
Vừa qua, tôi đã làm xong đồ án môn học với đề tài viết chương trình quản lý sinh viên bằng ngôn ngữ C#. Và nhận được số điểm cũng tàm tạm. Tiện đây, tôi muốn chia sẻ với các bạn đề tài này với nội dung là thêm, xóa, sửa trực tiếp trên datagridview bằng ngôn ngữ C#. Mục đích chia sẻ bởi vì trong quá trình tôi làm đồ án, tôi tìm kiếm trên mạng chỉ có một ít nguồn tham khảo - rất khó. Hy vọng, tôi chia sẻ nó trên bài viết này sẽ giúp tôi có thể tối ưu chương trình hơn và cũng giúp các bạn có một nguồn tham khảo tương đối.
Chương trình kết nối với SQL Server (2000), các bạn tự tạo cơ sở dữ liệu quản lý sinh viên và tham khảo nguồn code trong bài viết dưới đây để hoàn thiện bài làm của mình nhé.
Form Sinh viên:
Khai báo kết nối sql bằng cách thêm dòng lệnh:
using System.Data.SqlClient;
string connectionString;
SqlConnection conn = new SqlConnection();
DataSet ds;
SqlDataAdapter da;
private void LoadData()
{
connectionString = "Data Source=JackyChan;Initial Catalog=QLSV;Integrated Security=True";
ds = new DataSet();
string query = "Select * from Khoa";
try
{
SqlConnection conn = new SqlConnection(connectionString);
da = new SqlDataAdapter(query, conn);
da.Fill(ds, "Khoa");
(dataGridViewSinhvien.Columns["Makhoa"] as DataGridViewComboBoxColumn).DataSource = ds.Tables["Khoa"];
(dataGridViewSinhvien.Columns["Makhoa"] as DataGridViewComboBoxColumn).DisplayMember = "Makhoa";
(dataGridViewSinhvien.Columns["Makhoa"] as DataGridViewComboBoxColumn).ValueMember = "Makhoa";
da.SelectCommand.CommandText = "Select * from Sinhvien";
da.Fill(ds, "Sinhvien");
dataGridViewSinhvien.DataSource = ds.Tables["Sinhvien"];
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
Gọi hàm LoadData() trong Form load bằng cách nhấp đúp chuột vào Form Sinh viên, sau đó thêm vào dòng lệnh:
private void Sinhvien_Load(object sender, EventArgs e)
{
LoadData();
}
Nhấp đúp chuột vào buttonLuu và viết các lệnh như sau:
private void buttonLuu_Click(object sender, EventArgs e)
{
try
{
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
int CurrentIndex = dataGridViewSinhvien.CurrentCell.RowIndex;
string Masv = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[0].Value.ToString());
string Holot = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[1].Value.ToString());
string Ten = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[2].Value.ToString());
string Phai = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[3].Value.ToString());
string Ngaysinh = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[4].Value.ToString());
string Makhoa = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[5].Value.ToString());
string insertStr = "Insert into Sinhvien Values('" + Masv + "','" + Holot + "','" + Ten + "','" + Phai + "','" + Ngaysinh + "','" + Makhoa + "')";
SqlCommand insertCmd = new SqlCommand(insertStr, conn);
insertCmd.CommandType = CommandType.Text;
insertCmd.ExecuteNonQuery();
LoadData();
MessageBox.Show("Bạn đã lưu thành công!", "THÔNG BÁO", MessageBoxButtons.OK);
conn.Close();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
Nhấp đúp chuột vào buttonXoa và viết các lệnh như sau:
private void buttonXoa_Click(object sender, EventArgs e)
{
try
{
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
int CurrentIndex = dataGridViewSinhvien.CurrentCell.RowIndex;
string Masv =Convert.ToString (dataGridViewSinhvien.Rows[CurrentIndex].Cells[0].Value.ToString ());
string deletedStr = "Delete from Sinhvien where Masv='" + Masv + "'";
SqlCommand deletedCmd = new SqlCommand(deletedStr, conn);
deletedCmd.CommandType = CommandType.Text;
deletedCmd.ExecuteNonQuery();
da.Update(ds,"Sinhvien");
LoadData();
MessageBox.Show("Bạn đã xóa thành công!", "THÔNG BÁO", MessageBoxButtons.OK);
conn.Close();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
Nhấp đúp chuột vào buttonSua và viết các lệnh sau:
private void buttonSua_Click(object sender, EventArgs e)
{
try
{
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
int CurrentIndex = dataGridViewSinhvien.CurrentCell.RowIndex;
string Masv = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[0].Value.ToString());
string Holot = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[1].Value.ToString());
string Ten = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[2].Value.ToString());
string Phai = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[3].Value.ToString());
string Ngaysinh = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[4].Value.ToString());
string Makhoa = Convert.ToString(dataGridViewSinhvien.Rows[CurrentIndex].Cells[5].Value.ToString());
string updateStr = "Update Sinhvien set Masv='" + Masv + "',Holot='" + Holot + "',Ten='" + Ten + "',Phai='" + Phai + "',Ngaysinh='" + Ngaysinh + "',Makhoa='" + Makhoa + "' where Masv='" + Masv + "'";
SqlCommand updateCmd = new SqlCommand(updateStr, conn);
updateCmd.CommandType = CommandType.Text;
updateCmd.ExecuteNonQuery();
LoadData();
MessageBox.Show("Bạn đã sửa thành công!", "THÔNG BÁO", MessageBoxButtons.OK);
conn.Close();
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
Nhấp đúp chuột vào buttonThoat và thêm các dòng lệnh sau:
Quanlysinhvien _Quanlysinhvien = new Quanlysinhvien();
_Quanlysinhvien.Show();
Hide();
Tượng tự, bạn cũng tham khảo và hoàn thiện cho các form còn lại trong chương trình quản lý sinh viên. Nếu các bạn có nhu cầu tham khảo thêm, có thể tải tài liệu tham khảo của tôi tại đây.
Ngoài ra, các bạn có thể comment hoặc gửi mail liên hệ cho tôi. Tôi sẵn sàng trao đổi với bạn bất cứ thời gian nào.
Lưu ý: Yêu cầu ghi rõ nguồn https://thuthuatmaytinh24gio.blogspot.com khi sao chép nội dung này.
Tác giả: Đỗ Thanh Trọng
Tác giả: Đỗ Thanh Trọng
Nhận xét
Đăng nhận xét