c#数据库课程设计源码
- 行业动态
- 2025-02-04
- 1
C#数据库课程设计源码是一套基于C#语言开发的数据库应用程序示例,旨在帮助学习者掌握数据库编程技术。该
源码通常包含数据库连接、数据操作(如增删改查)、用户界面设计等关键部分,通过实际项目实践,提升编程能力和对数据库应用的理解。
一、数据库设计
1、数据库名称:StudentDB
2、数据表名称:Students
3、字段说明
StudentID(int类型,主键,自增长):学生编号。
Name(nvarchar(50)类型):学生姓名。
Age(int类型):学生年龄。
Gender(nvarchar(10)类型):学生性别。
二、C#代码实现
1、创建数据库连接类
using System; using System.Data.SqlClient; namespace StudentManagementSystem { class DBConnection { private static string connectionString = "Server=.;Database=StudentDB;Integrated Security=True"; public static SqlConnection GetConnection() { return new SqlConnection(connectionString); } } }
2、创建学生信息类
namespace StudentManagementSystem { class Student { public int StudentID { get; set; } public string Name { get; set; } public int Age { get; set; } public string Gender { get; set; } } }
3、创建数据访问层
using System; using System.Data; using System.Data.SqlClient; namespace StudentManagementSystem { class StudentDAL { public DataTable GetAllStudents() { string query = "SELECT * FROM Students"; SqlConnection conn = DBConnection.GetConnection(); SqlCommand cmd = new SqlCommand(query, conn); DataTable dt = new DataTable(); try { conn.Open(); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(dt); } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } finally { conn.Close(); } return dt; } public void AddStudent(Student student) { string query = "INSERT INTO Students (Name, Age, Gender) VALUES (@Name, @Age, @Gender)"; SqlConnection conn = DBConnection.GetConnection(); SqlCommand cmd = new SqlCommand(query, conn); cmd.Parameters.AddWithValue("@Name", student.Name); cmd.Parameters.AddWithValue("@Age", student.Age); cmd.Parameters.AddWithValue("@Gender", student.Gender); try { conn.Open(); cmd.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } finally { conn.Close(); } } public void UpdateStudent(Student student) { string query = "UPDATE Students SET Name = @Name, Age = @Age, Gender = @Gender WHERE StudentID = @StudentID"; SqlConnection conn = DBConnection.GetConnection(); SqlCommand cmd = new SqlCommand(query, conn); cmd.Parameters.AddWithValue("@StudentID", student.StudentID); cmd.Parameters.AddWithValue("@Name", student.Name); cmd.Parameters.AddWithValue("@Age", student.Age); cmd.Parameters.AddWithValue("@Gender", student.Gender); try { conn.Open(); cmd.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } finally { conn.Close(); } } public void DeleteStudent(int studentID) { string query = "DELETE FROM Students WHERE StudentID = @StudentID"; SqlConnection conn = DBConnection.GetConnection(); SqlCommand cmd = new SqlCommand(query, conn); cmd.Parameters.AddWithValue("@StudentID", studentID); try { conn.Open(); cmd.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine("Error: " + ex.Message); } finally { conn.Close(); } } } }
4、创建业务逻辑层和表示层
using System; namespace StudentManagementSystem { class Program { static void Main(string[] args) { StudentDAL dal = new StudentDAL(); while (true) { Console.WriteLine("1. View All Students"); Console.WriteLine("2. Add Student"); Console.WriteLine("3. Update Student"); Console.WriteLine("4. Delete Student"); Console.WriteLine("5. Exit"); Console.Write("Enter your choice: "); int choice = int.Parse(Console.ReadLine()); switch (choice) { case 1: DisplayStudents(dal.GetAllStudents()); break; case 2: AddStudent(dal); break; case 3: UpdateStudent(dal); break; case 4: DeleteStudent(dal); break; case 5: return; default: Console.WriteLine("Invalid choice. Please try again."); break; } } } static void DisplayStudents(DataTable table) { foreach (DataRow row in table.Rows) { Console.WriteLine($"StudentID: {row["StudentID"]}, Name: {row["Name"]}, Age: {row["Age"]}, Gender: {row["Gender"]}"); } } static void AddStudent(StudentDAL dal) { Student student = new Student(); Console.Write("Enter student name: "); student.Name = Console.ReadLine(); Console.Write("Enter student age: "); student.Age = int.Parse(Console.ReadLine()); Console.Write("Enter student gender: "); student.Gender = Console.ReadLine(); dal.AddStudent(student); Console.WriteLine("Student added successfully!"); } static void UpdateStudent(StudentDAL dal) { Console.Write("Enter student ID to update: "); int id = int.Parse(Console.ReadLine()); Student student = new Student(); Console.Write("Enter new name: "); student.Name = Console.ReadLine(); Console.Write("Enter new age: "); student.Age = int.Parse(Console.ReadLine()); Console.Write("Enter new gender: "); student.Gender = Console.ReadLine(); student.StudentID = id; dal.UpdateStudent(student); Console.WriteLine("Student updated successfully!"); } static void DeleteStudent(StudentDAL dal) { Console.Write("Enter student ID to delete: "); int id = int.Parse(Console.ReadLine()); dal.DeleteStudent(id); Console.WriteLine("Student deleted successfully!"); } } }
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/140413.html