Linq to SQL 简单增删改查
用Linq大大减少了对数据库的一般操作所需的编码量。
运行下面事例之前,首先建一个叫做Alien的数据库表。
CREATE TABLE [dbo].[Aliens](
[Id] [int] IDENTITY(1,1) NOT NULL primary key,
[Name] [nchar](10) NULL,
)
建一个console项目,在项目里添加一个Linq To Sql类文件(.dbml以及两个附属文件),把Alien表从服务器资源管理器拖进来。然后就可以运行下面的代码了:
示例代码
using System;
using System.Linq;
namespace LearnLinqToSql
{
class Program
{
static void Main(string[] args)
{
ForLearnDataContext db = new ForLearnDataContext();
db.Log = Console.Out;
// Insert
Alien et = new Alien { Name = "ET" };
db.Alien.InsertOnSubmit(et);
db.SubmitChanges();
// Update
Alien toChange = db.Alien.Where(a => a.Name == "ET").First();
toChange.Name = "DC";
db.SubmitChanges();
// Delete
Alien dc = db.Alien.Where(a => a.Name == "DC").First();
db.Alien.DeleteOnSubmit(et);
db.SubmitChanges();
Console.WriteLine(et.GetHashCode());
Console.WriteLine(toChange.GetHashCode());
Console.WriteLine(dc.GetHashCode());
db.Alien.InsertOnSubmit(et); // Error: Cannot add an entity that already exists.
}
}
}
通过上面示例可以感觉到,运行环境默默在本地维护了一套对象,在数据库端指向的是同一条记录,则在代码这端就是指向同一个实体的引用。
Linq to SQL 简单增删改查的更多相关文章
- linq to sql 中增删改查
首先我先说一下,如果真的要用linq做项目的话,也会是比较方便的.已经尝试了在三层架构中应用linq to sql 比较方便. //有三个不同的数据库表,所以写法不一样 public class Li ...
- Linq to SQL 的增删改查操作
Linq,全称Language Integrated Query,是C#语言的一个扩展,可以将数据查询直接集成到编程语言本身中. Linq分为查询语法和方法语法,说白了查询语法就是 from wher ...
- 数据库基本查询语句(SQL常用增删改查语句 简单复习 mark)
SQL常用增删改查语句 1增 1.1[插入单行]insert [into] <表名> (列名) values (列值)例:insert into Strdents (姓名,性别,出生日期) ...
- ado.net的简单数据库操作(三)——简单增删改查的实际应用
果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...
- Redis:五种数据类型的简单增删改查
Redis简单增删改查例子 例一:字符串的增删改查 #增加一个key为ay_key的值 127.0.0.1:6379> set ay_key "ay" OK #查询ay_ke ...
- 【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建
数据库的创建和sql语句增删改查 1. 载入驱动. 2. 连接数据库. 3. 操作数据库. 创建表: create table person( _id integer primary key, nam ...
- 国产化之路-统信UOS + Nginx + Asp.Net MVC + EF Core 3.1 + 达梦DM8实现简单增删改查操作
专题目录 国产化之路-统信UOS操作系统安装 国产化之路-国产操作系统安装.net core 3.1 sdk 国产化之路-安装WEB服务器 国产化之路-安装达梦DM8数据库 国产化之路-统信UOS + ...
- Mybatis实现简单增删改查
Mybatis的简单应用 学习内容: 需求 环境准备 代码 总结: 学习内容: 需求 使用Mybatis实现简单增删改查(以下是在IDEA中实现的,其他开发工具中,代码一样) jar 包下载:http ...
- linq的简单增删改查
Linq高集成化的数据访问类,它会自动映射数据库结构,将表名完整映射成为类名,将列名完整映射成字段名数据库数据访问,能大大减少代码量.(反正最后结果就是不用写ado.Net那一套增删改查,有一套封装好 ...
随机推荐
- Java使用socket实现两人聊天对话
import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; /* ...
- UVALive 3211 Now or later
每架飞机有早晚起降两种方式,给定n架飞机两种方式的起落时间,为每架飞机安排起落时间(早或晚),使得所有飞机起降时间按照早到晚的顺序之间的间隔时间最小值尽量大. 分析: 最小时间尽量大应该采用二分的方法 ...
- 很受欢迎的Linux笔记(短小精悍)
http://blog.csdn.net/xsl1990/article/details/8274028 如何知道所使用的LINUX是哪个发行版? lsb_release -a 查找某个文件的另类方法 ...
- C++构造函数,复制构造函数和析构函数专题
链接:http://wenku.baidu.com/view/d9316c0e52ea551810a6872a.html 本文作者:黄邦勇帅本文是学习 C++中的最基本的内容,因此学习 C++就应全部 ...
- 关于方程x^2+y^2=p (p为素数)的解问题
问题描述:对于方程,其中为素数,x,y为整数,且,输出符合条件的x,y. 分析:对于本方程,我们通过费马平方和定理知道,只有奇素数p满足这个条件时才有解. 那么当此方程有解时,解有几个呢?很明显不可能 ...
- tlplayer for ios V1.1.2加密测试版本(修复1.1.1版本 for ios7播放闪退问题)
此版本主要修复了ios7播放列表导致的程序闪退问题,方便大家测试加密与非加密视频. 此为tlplayer for ios版本,可以播放加密视频与非加密视频. 加密视频下载地址:http://blog. ...
- 应付描述性弹性域 Description Flexfield
(N) AP > Setup > Flexfield > Description > Segments To define your descriptive flexfield ...
- Github是什么?看完你就了解一些了
要了解Github,我们首先要知道Git,Git是管理代码的工具,写代码不是件轻松的事儿,一个人写的时候已经不轻松了,一群人写就更不轻松了,但这世界上很多事都是怎么不轻松怎么来的,大部分人都会和别人一 ...
- .NET(C#)调用webService获取客户端IP地址所属区域(非异步)
功能描述: 此接口用于获取客户端访问的IP的地址所属的区域(国家,城市等).通过输入IP地址查询国家.城市.所有者等信息.没有注明国家的为中国输入参数:IP地址(自动替换 " ." ...
- POJ 3169 Layout 差分约束系统
介绍下差分约束系统:就是多个2未知数不等式形如(a-b<=k)的形式 问你有没有解,或者求两个未知数的最大差或者最小差 转化为最短路(或最长路) 1:求最小差的时候,不等式转化为b-a>= ...