首頁 > 軟體

Entity Framework使用DataBase First模式實現資料庫的增刪改查

2022-03-08 19:00:05

上一篇文章中講解了如何生成EF的DBFirst模式,接下來講解如何使用DBFirst模式實現資料庫資料的增刪改查

一、新增資料

新增一個Student,程式碼如下:

static void Add()
{
     using (StudentSystemEntities dbContext = new StudentSystemEntities())
      {
          // 定義Student物件
          Student stu = new Student()
          {
               StudentName = "花千骨",
               Sex = "女",
               Age = 3422,
               Major = "舞蹈專業",
               Email = "2345678911@qq.com"
           };
           // 將EF執行的SQL語句輸出到控制檯
           dbContext.Database.Log += p => Console.WriteLine(p);
           // 只是記憶體上面的操作
           dbContext.Students.Add(stu);
           // 儲存的資料庫
           dbContext.SaveChanges();
           Console.WriteLine("儲存成功");
      }
}

在Main()方法裡面呼叫Add()方法,結果:

檢視資料庫結果:

從上面的兩個截圖中可以看出資料新增成功。

二、查詢資料

查詢StudentName是唐僧的學生資訊並輸出:

static void Query()
{
       using (StudentSystemEntities dbContext = new StudentSystemEntities())
       {
            List<Student> list = dbContext.Students.Where(p => p.StudentName == "唐僧").ToList<Student>();
            list.ForEach(p =>
            {
                    Console.WriteLine("姓名:"+p.StudentName+",年齡:"+p.Age+",專業:"+p.Major+",郵箱:"+p.Email);
             });
        }
}

在Main()方法裡面呼叫Query(),結果:

三、修改資料

修改StudentName為花千骨的學生年齡:

static void Edit()
{
     using (StudentSystemEntities dbContext = new StudentSystemEntities())
     {
          // 將EF執行的SQL語句輸出到控制檯
          dbContext.Database.Log += p => Console.WriteLine(p);
          // 查詢要修改的資料,FirstOrDefault表示查詢到的第一條資料
          Student student = dbContext.Students.Where(p => p.StudentName == "花千骨").FirstOrDefault();
          // 儲存修改
          student.Age = 234;
          dbContext.SaveChanges();
          Console.WriteLine("修改成功");
      }
}

結果:

檢視資料庫資料:

四、刪除資料

刪除新新增的資料:

static void Delete()
{
      using (StudentSystemEntities dbContext = new StudentSystemEntities())
      {
           // 將EF執行的SQL語句輸出到控制檯
           dbContext.Database.Log += p => Console.WriteLine(p);
           // 先查詢然後在刪除
           Student stu = new Student()
           {
                 StudentID=18
           };
            // 附加到集合中
            dbContext.Students.Attach(stu);
            // 刪除的SQL語句是根據stu的StudentID生成的
            dbContext.Students.Remove(stu);
            // 儲存
            dbContext.SaveChanges();
            Console.WriteLine("刪除成功");
       }
}

結果:

檢視資料庫:

資料刪除成功。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com