LINQ的增删改查写法&&组合查询
.ToList();//返回一个集合,包含查到的所有值;
.First();//返回查到的第一条数据,如果查不到会报错;
.FirstOrDefault();返回查到的第一条数据,差不到返回一个null;
db.Users.InsertOnSubmit();//添加
db.DeleteOrSubmit();//删除
db.SubmitChanges();//提交修改,增删改都需要提交;
//修改取到对象之后直接赋值,提交;
List<Users> ulist = db.Users.where(r => r.UserName.StartsWith("查开头关键字的方法")).ToList;
List<Users> ulist = db.Users.where(r => r.UserName.EndsWith("查结尾关键字的方法")).ToList;
List<Users> ulist = db.Users.Max(r => r.Ids).ToList;//查ids最大值的方法;
List<Users> ulist = db.Users.Min(r => r.Ids).ToList;//查ids最小值的方法;
List<Users> ulist = db.Users.Average(r => r.Ids).ToList;//查ids平均值的方法;
List<Users> ulist = db.Users.Sum(r => r.Ids).ToList;//查ids总值的方法;
List<Users> ulist = db.Users.OderBy(r => r.Ids).ToList;//升序查ids的方法;
List<Users> ulist = db.Users.OderByDescending(r => r.Ids).ToList;//升序查ids的方法;
List<Users> ulist = db.Users.Skip(i).Take(j).ToList();//跳过N条查J条数据的方法,分页查;
using (DBDataContext con = new DBDataContext())
{
//查询表内所有数据,只是查询,不会放到集合内;
IQueryable<car> clist = con.car.AsQueryable();
//判断
if (textBox1.Text.Length > )
{
clist = clist.Where(r => r.name.Contains(textBox1.Text)).AsQueryable();
}
//判断
if (textBox2.Text.Length > )
{
if (comboBox1.Text == "大于等于")
clist = clist.Where(r => r.oil >= Convert.ToDecimal(textBox2.Text)).AsQueryable();
else if (comboBox1.Text == "小于等于")
clist = clist.Where(r => r.oil <= Convert.ToDecimal(textBox2.Text)).AsQueryable();
else
clist = clist.Where(r => r.oil == Convert.ToDecimal(textBox2.Text)).AsQueryable();
}
//判断
if (textBox3.Text.Length > )
{
if (comboBox2.Text == "大于等于")
clist = clist.Where(r => r.price >= Convert.ToDecimal(textBox3.Text)).AsQueryable();
else if (comboBox2.Text == "小于等于")
clist = clist.Where(r => r.price <= Convert.ToDecimal(textBox3.Text)).AsQueryable();
else
clist = clist.Where(r => r.price == Convert.ToDecimal(textBox3.Text)).AsQueryable();
}
//以上判断执行的代码就相当于sql语句的拼接,不会真正把数据放到集合内
//只有执行ToList();这一句代码,才会真正把数据放到集合内
List<car> llist= clist.ToList();
//基础查,把内容放到泛型集合
using(DBDataContext db = new DBDataContext())
{
List<Users> ulist = db.Users.ToList();
}
//模糊差,contains包含
string a = "";
using(DBDataContext db = new DBDataContext())
{
List<Users> ulist = db.Users.where(r => r.Ids.Contains(a))ToList();
}
//精确查,
string a = "";
using(DBDataContext db = new DBDataContext())
{
List<Users> ulist = db.Users.where(r => r.Ids==a)ToList();
}
//添加
Users u = new Users();
u.ids = "";
u.UserName = "";
u.password = "";
using(DBdataContext db = new DBDataTaxt())
{
try
{
db.Users.InsertOnSubmit(u);
db.SubmitChanges();
MessageBox.Show("成功");
}
catch
{
MessageBox.Show("失败");
}
}
//修改
string a = "";
using(DBdataContext db = new DBDataTaxt())
{
try
{
Users u = db.Usres.where(r => r.ids == a).FirstOrDefault();
u.ids = "";
u.UserName = "";
u.password = "";
db.SubmitChanges();
MessageBox.Show("成功");
}
catch
{
MessageBox.Show("失败");
}
} //删除
string a = "";
using(DBdataContext db = new DBDataTaxt())
{
List<Users> ulist = db.Users.where(r => r.Ids == a).ToList();
if(ulist.Count > )
{
db.DeleteOnSubmit(ulist[]);
db.SubmitChanges();
}
}
LINQ的增删改查写法&&组合查询的更多相关文章
- SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]
SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数 --创建表格 create table aa ( UserName varchar(50 ...
- 【gridview增删改查】数据库查询后lodop打印
ASP.NET中使用gridview可以很容易的把需要的数据动态显示在前台,还可以在表格里加入列进行增删改查,每次点击的时候重新加载数据,gridview也提供了分页等功能,还有一些模版让显示在前台的 ...
- 增删改查- 万能map- 模糊查询
1.编写接口 2.编写对应的mapper种的sql语句 3.测试 接口 public interface UserDao { List<User> getUserList(); //根据I ...
- JDBC 增删改查代码 过滤查询语句
package test; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; i ...
- LinQ的增删改查
全名:LinQ to sql类:集成化的数据访问类.会自动生成,进行数据库数据访问. LinQ的创建: 1.链接数据库:添加--添加新项--找到LINQ to SQL类--名字就叫数据库的名称就好. ...
- php连接数据库增删改查----多条件查询
关于查询,可以直接写在主页面上 来进行查询 首先,先建立一个表单 <form method="post" action="crud.php"> &l ...
- Elasticsearch增删改查 之 —— Get查询
GET API是Elasticsearch中常用的操作,一般用于验证文档是否存在:或者执行CURD中的文档查询.与检索不同的是,GET查询是实时查询,可以实时查询到索引结果.而检索则是需要经过处理,一 ...
- 【hbase】——Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...
- (转)Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...
随机推荐
- 重构客户注册-基于ActiveMQ实现短信验证码生产者
重构目标:将bos_fore项目中的CustomerAction作为短信消息生产者,将消息发给ActiveMQ,创建一个单独的SMS项目,作为短信息的消费者,从ActiveMQ获取短信消息,调用第三方 ...
- mybatis源码分析(三)------------映射文件的解析
本篇文章主要讲解映射文件的解析过程 Mapper映射文件有哪几种配置方式呢?看下面的代码: <!-- 映射文件 --> <mappers> <!-- 通过resource ...
- Spring 基于XML配置
基于XML的配置 对于基于XML的配置,Spring 1.0的配置文件采用DTD格式,Spring2.0以后采用Schema格式,后者让不同类型的配罝拥有了自己的命名空间,使得配置文件更具扩展性.此外 ...
- flutter 动画双指放大图片
class GridAnimation extends StatefulWidget { @override State<StatefulWidget> createState() { r ...
- yml中driver-class-name: com.mysql.jdbc.Driver 解析不到的问题
当在idea中使用springboot的快捷创建方式时,选中了mysql 和jdbc 那么pom文件中会直接有 <dependency> <groupId>mysql</ ...
- springmvc中model可以封装的数据类型
查看源码可以知道,model中可以存放的数据类型 Model addAttribute(String var1, @Nullable Object var2); Model addAttribute( ...
- Js--动态生成表格
<div> <h1>动态生成表格</h1> <div id="table1"> 行 ...
- c++ 动态生成string类型的数组
定义一个字符串指针,将其初始化为空 char *a=NULL 然后输入输出 cin>>a cout<<a 编译无误,但执行会遇见错误 当为*a动态分配存储空间时,程序执行正常 ...
- Fence Repair POJ - 3253 哈夫曼思想 优先队列
题意:给出一段无限长的棍子,切一刀需要的代价是棍子的总长,例如21切一刀 变成什么长度 都是代价21 列如7切成5 和2 也是代价7题解:可以利用霍夫曼编码的思想 短的棍子就放在底层 长的尽量切少一次 ...
- WIN8.1下Prolific USB-to-Serial Comm Port驱动黄色感叹号问题
文章解决来源:http://blog.csdn.net/gsj0791/article/details/17664861 在做fpga口的uart回环测试时候,由于开发板上的是usb转uart,所以需 ...