Linq 数据库操作(增删改查)
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;
Linq 数据库操作(增删改查)的更多相关文章
- Yii数据库操作增删改查-[增加\查询\更新\删除 AR模式]
		
在Yii的开发中常常需要去使用Yii的增删改查方法,这些方法又可以多次变化和组合,带来全方位的实现对数据库的处理,下面对这些方法做一些简单的整理和梳理,有遗漏或是BUG,敬请指出.灰常感谢!!! 一. ...
 - Django数据库操作(增删改查)
		
Django数据库操作(增删改查) 创建数据库中的一个表 class Business(models.Model): #自动创建ID列 caption = models.CharField(max_l ...
 - Android下数据库操作——增删改查
		
Android下数据库第一种方式增删改查 1.创建一个帮助类的对象,调用getReadableDatabase方法,返回一个SqliteDatebase对象 2.使用SqliteDat ...
 - spring框架学习之--数据库操作增删改查
		
基于spring的NamedParameterJdbcTemplate操作数据库 首先在 resources 文件夹下添加数据库配置文件jdbc.properties 配置常用的数据库信息 consu ...
 - SpringBoot 数据库操作 增删改查
		
1.pom添加依赖 <!--数据库相关配置--> <dependency> <groupId>org.springframework.boot</groupI ...
 - Yii2.0数据库操作增删改查详解
		
1.简单查询: one(): 根据查询结果返回查询的第一条记录. all(): 根据查询结果返回所有记录. count(): 返回记录的数量. sum(): 返回指定列的总数. average(): ...
 - django数据库操作-增删改查-多对多关系以及一对多(外键)关系
		
一.一对多(外键) 例子:一个作者对应多本书,一本书只有一个作者 model代码: class Person(models.Model); name = models.CharField('作者姓名' ...
 - 转: django数据库操作-增删改查-多对多关系以及一对多(外键)关系
		
原文链接:http://blog.csdn.net/u010271717/article/details/22044415 一.一对多(外键) 例子:一个作者对应多本书,一本书只有一个作者 model ...
 - 使用JDBC连接MySQL数据库操作增删改查
		
目录 1.首先这个Myeclipse的包名以及一些实现的类(这样子写是我的习惯) 2.接下来我们创建数据库(MySQL) 3.在数据库里面添加数据 4.首先是BaseDao,这个是重中之重,注意那个数 ...
 - 通过Loadruner对mysql数据库进行增删改查
		
操作mysql数据库,是在实现mysql数据源配置的基础上操作,可先阅读:loadrunner参数化使用mysql数据源失败解决方法 写之前先理一下,数据库访问流程:打开数据库 --> 数据库 ...
 
随机推荐
- javascrip keyCode属性备案
			
keycode 8 = BackSpace BackSpacekeycode 9 = Tab Tabkeycode 12 = Clearkeycode 13 = Enterkeyc ...
 - 【转】python代码风格-PEP8
			
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
 - Java学习笔记之==与equals
			
一.问题引入 Java测试两个变量是否相等有两种方式:==运算符和equals方法. 但是这二者完全一样吗?考虑下面程序: public class TestEqual { public static ...
 - Codeforces Round #313 (Div. 1) A. Gerald's Hexagon 数学题
			
A. Gerald's Hexagon Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/559/p ...
 - android 下修改 hosts文件 及 out of memory的解决
			
因为android模拟器host文件无法修改,导致无法通过域名使用http方法调用内网服务,因此从网上大量转载的一种方法,这种方法: 1. 通过emulator -avd avdName -parti ...
 - 0c-40-ARC下多对象内存管理
			
1个人拥有1条狗. 问题1:人拥有狗作为成员变量,此时使用weak,释放过程是什么样? Person *p = [Person new]; Dog *d = [Dog new]; //设置人拥有dog ...
 - 2sum、3sum、4sum以及任意连续的数的和为sum、任意连续或者不连续的数的和为sum
			
2sum 如果数组是无序的,先排序(n*logn),然后用两个指针i,j,各自指向数组的首尾两端,令i=0,j=n-1,然后i++,j--,逐次判断a[i]+a[j]?=sum,如果某一刻a[i]+a ...
 - Linux中如何使用gThumb批量调整图片大小
			
Linux中如何使用gThumb批量调整图片大小 导读 如果你的工作涉及到图片编辑和处理,就一定会有同时对多张图片进行批量大小调整的经历.虽然大多数图片编辑应用都能够非常容易地批量调整多张图片,但对于 ...
 - 快递鸟API接口调用代码示例(免费不限量)
			
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
 - onkeyup,onkeydown和onkeypress
			
如下一段代码: <html> <script> function checkForm(){ if(event.keyCode ==13){ event.keyCo ...