? Linq數據庫增刪改查?
Linq是一種查詢語言,集成包含在formwork中,包含在C#語言中,它的作用是降低查詢的門檻,提高開發效率,是我們必須掌握的技術之一,下面是我自己對linq數據庫操作的方法,與大家分享一下。
?
1、首先是添加:我自己的添加理念是,先查看一下添加的主鍵是否存在,以免重復添加,然后為添加的新行賦值,最后添加刷新數據庫實現添加。
如:
public static bool Add(string s1, string s2, string s3, string s4) ???????//s1為添加的編號是主鍵,s2,s3,s4分別是要添加的姓名、地址、電話
?{ ??????????
//?new一個linq類對象
DataClasses1DataContext dc = new DataClasses1DataContext(); ???????????
//定義一個bool類型值,初始化為false ???????????
bool b = false; ???????????
//linq語句 ???????????
var re = from list1 in dc.list ????????????????????
where list1.LId == s1 ????????????????????
select list1; ???????????
//查看學號是否已存在,修改bool值 ???????????
foreach (var i in re) ???????????
{ ???????????????
string s = i.LId;
?????????????? ? b = true; ?????????????? ???????????
} ???????????
if (b == false) ???????????
? ?{ ???????????????
//為添加行賦值 ???????????????
list l = new list(); ???????????????
l.LId = s1;????????????????
l.LName = s2; ???????????????
l.LAddress = s3; ???????????????
l.LPhone = s4;
??????????????? ? ?dc.list.InsertOnSubmit(l);? //實現添加 ???????????????
? ?return b; ???????????
} ???????????
??? ?return b; ???????
}
?
2、然后是修改,修改是先查到要修改的主鍵,然后為修改項賦值,最后刷新數據庫實現修改
如:
public static bool Update(string s1, string s2, string s3, string s4)
??????? {
??????????? //定義一個bool類型值
??????????? bool b = false;
??????????? try
??????????? {
??????????????? DataClasses1DataContext dc = new DataClasses1DataContext();
??????????????? //linq執行語句
??????????????? var re = from l in dc.list
???????????????????????? where l.LId == s1
???????????????????????? select l;
??????????????? //實現修改
??????????????? foreach (list i in re)
??????????????? {
??????????????????? i.LName = s2;
??????????????????? i.LAddress = s3;
??????????????????? i.LPhone = s4;
??????????????????? dc.SubmitChanges(); //實現數據庫更新
??????????????? }
??????????? }
??????????? catch
??????????? {
??????????????? b = true;
??????????? }
??????????? return b;
??????? }
3、然后是刪除,刪除比較簡單,找到要刪除的主鍵,執行刪除方法,刷新數據庫就行了
如:
??????? public static bool Delete(string s)
??????? {
??????????? //定義一個bool類型值
??????????? bool b = false;
??????????? try
??????????? {
??????????????? DataClasses1DataContext dc = new DataClasses1DataContext();
??????????????? //linq語句
??????????????? var re = from l in dc.list
???????????????????????? where l.LId == s
???????????????????????? select l;
??????????????? //實現刪除
??????????????? dc.list.DeleteAllOnSubmit(re);
??????????????? //刷新數據庫
??????????????? dc.SubmitChanges();
??????????? }
??????????? catch
??????????? {
??????????????? b = true;
??????????? }
??????????? return b;
??????? }
4、最后是查詢了,linq查詢語句、綁定就ok了
如:
DataClasses1DataContext dc = new DataClasses1DataContext();
??????????? //linq語句
??????????? var re = from l in dc.list
???????????????????? select l;
??????????? dataGridView1.DataSource = re;