Lin语法(Linq对数据库操作)
一、Linq语句的应用:
var queryAllCustomers = from cust in customers group cust by cust.City into custGroup where cust.City == "London" orderby cust.Name ascending select cust;
1、 from 子句引入数据源 (customers) 和范围变量 (cust)。
2、where筛选子句(后面是筛选的条件)
(1):筛选一张表中的字段时:where cust.City == "London" && cust.Name == "Devon"使用&&链接,表示“并且“的意思
(2):筛选多张表中的字段时:where cust.City == "London" || cust.City == "Paris"使用||链接,表示”或者“的意思
3、排序
(1):order 字段 ascebding :根据字段自动正序排序
(2):orderby 字段 descending :根据字段自动反序排序
4、分组
(1):group cust by cust.City into custGroup:group cust by cust.字段名称 into 自定义分组名称
--------------------------------------------------------------------------------------------------------------------------------------------------------------
var innerJoinQuery =from cust in customers join dist in distributors on cust.City equals dist.City select new { CustomerName = cust.Name, DistributorName = dist.Name };
5、 联接
(1):join dist in distributors on cust.City equals dist.City:join 范围属性 in 表名称 on 第一张表.字段 = 第二张表.字段
(2):select new { CustomerName = cust.Name, DistributorName = dist.Name }:把第一张表的name和第二张表的name重新定义一个名称!!!
--------------------------------------------------------------------------------------------------------------------------------------------------------------
二、Linq连接数据库:
1、首先创建一个Linq to sql类
2、视图中找到服务器资源管理器
3、连接数据库,创建Linq to sql类,把表拖拽到Linq to sql类中
4、Web.config中创建连接数据库的字符串
(1):<add name="BroadcastScreenConnectionString" connectionString="Data Source=.;Initial Catalog=BroadcastScreen;User ID=sa;Password=wbf2368864112."
5、创建一个普通类class1
(1):public static string sqlconnectionstring=configurationManager.ConnectionStrings[“BroadcastScreenConnectionString”].ConnectionString;
(2): public DataClasses1DataContext db = new DataClasses1DataContext(SqlConnectionString);
(3):public class Class1: System.Web.UI.Page,继承System.Web.UI.Page,这个方法是创建web项目时自带的,只不过放到了这里被继承,然后web项目再继承连接数据库的类,这样做的目的是为了把连接字符串的方法改成公共类
6、web项目public partial class WebForm1 : Class1
7、增删改查:
(1)、(增)article c = new article(); article:表名,把c表中需要的字段赋值,完成后db.article.InsertOnSubmit(c); db.SubmitChanges();这两句的作用:把需要添加的数据添加到相应的数据库中
(2)、(删)db.ExecuteCommand("UPDATE SiteInfo SET IsDeleted = 1 WHERE Id=1
ExecuteCommand作用:直接对数据库执行sql命令
(3)、(改) var sql = from b in db.article where b.id == 1118 select b;先根据linq语句条件id查到想修改的数据,sql.name=“黄桃”,对象点字段的形式把需要修改的字段修改完成后再用db.article.InsertOnSubmit(c); db.SubmitChanges();把修改完成的数据修改到相应的数据库中;
(4)、(查) 查询根据linq查询数据,linq的形式根据顶端作为参考!!!
Lin语法(Linq对数据库操作)的更多相关文章
- LINQ(数据库操作增、删、改及并发管理)
本文将演示如何通过 Entity Framework 数据模型创建.修改.删除数据库记录. Customer cust = new Customer() { CustomerID = "LA ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- Linq 数据库操作(增删改查)
Linq数据库增删改查 Linq是一种查询语言,集成包含在formwork中,包含在C#语言中,它的作用是降低查询的门槛,提高开发效率,是我们必须掌握的技术之一,下面是我自己对linq数据库操作的方法 ...
- C# SQLite 数据库操作
C# SQLite 数据库操作学习 运行环境:Window7 64bit,.NetFramework4.61,C# 7.0 参考: SQLite 官网 SQL As Understood By SQL ...
- [C#] 进阶 - LINQ 标准查询操作概述
LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...
- 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- LINQ系列:LINQ to XML操作
LINQ to XML操作XML文件的方法,如创建XML文件.添加新的元素到XML文件中.修改XML文件中的元素.删除XML文件中的元素等. 1. 创建XML文件 string xmlFilePath ...
- 常用的Mysql数据库操作语句大全
一.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...
- python 学习笔记十六 django深入学习一 路由系统,模板,admin,数据库操作
django 请求流程图 django 路由系统 在django中我们可以通过定义urls,让不同的url路由到不同的处理函数 from . import views urlpatterns = [ ...
随机推荐
- ubuntu中执行可执行文件时报错“没有那个文件或目录”的解决办法(非权限问题)
问题:可执行文件明明存在,也有可执行权限(x),但执行时就提示"没有那个文件或目录". 原因:这个程序的是32位的程序(比如arm-linux-gcc),而系统是64位的,运行时需 ...
- Servlet-授课
1 Servlet 1.1 Servlet概述 Servlet是SUN公司提供的一套规范,名称就叫Servlet规范,它也是JavaEE规范之一.我们可以像学习Java基础一样,通过API来学习Ser ...
- welcome实现首页路由的重定向效果
welcome实现首页路由的重定向效果 1.创建welcome组件 2.在路由中引入组件并配置子组件 3.在home.vue中添加路由占位符 4.测试
- 还可以使用 -c 参数来显示全部内容,并标出不同之处 diff -c test2.txt test1.txt
二.实例 在test目录下存放了两个文本文件,test1.txt test2.txt . 比较这两个文件的异同. diff test1.txt test2.txt "5c5& ...
- TCP三次握手和四次挥手及对应端口状态
一.三次握手 1.第一次握手:Client 将标志位置为1,并向Server发送个seq=j,j为随机产生的数:等待Server回复,此时Client的端口状态为SYN_SENT. 2.第二次握手:S ...
- FD_SET -(转自 kakaxia6337的专栏)
FD_ZERO,FD_ISSET这些都是套节字结合操作宏 看看MSDN上的select函数, 这是在select io 模型中的核心,用来管理套节字IO的,避免出现无辜锁定. int se ...
- selenium常用代码
from selenium import webdriver # 1. 添加浏览器设置参数对象 options = webdriver.ChromeOptions() # 2. 设置中文,与下载无弹窗 ...
- java命令的本质逻辑揭秘
前言 在日常编码中,有了ide的支持,我们已经很少直接在命令行中直接执行java XXX命令去启动一个项目了.然而我们有没有想过,一个简单的java命令背后究竟做了些什么事情?让我们看下下面几个简单的 ...
- PTH的几种食用姿势
PTH PTH(pass the hash)也叫做hash传递.在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过NTLM Hash(mimikatz或其他手段抓取到的密码hash)访问远 ...
- Lua时间互转
1. 时间戳转成格式化字符串 直接利用函数os.date()将时间戳转化成格式化字符串. local timestamp = 1561636137; local strDate = os.date(& ...