轻量ORM-SqlRepoEx (四)INSERT、UPDATE、DELETE 语句
*本文中所用类声明见上一篇博文《轻量ORM-SqlRepoEx (三)Select语句》中Customers类
一、增加记录
1、工厂一个实例仓储
var repository = RepoFactory.Create<Customers>();
2、使用实例增加
Customers customers = new Customers { CustomerID = "YOUR1", CompanyName = "你的公司名1", Phone = "13900000000" };
repository.Insert().For(customers).Go();
当前增加的SQL语句:
INSERT[dbo].[Customers]([CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax])
VALUES('YOUR1', '你的公司名1', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '13900000000', NULL);
3、指定列值增加
repository.Insert().With(m => m.CustomerID, "YOUR1")
.With(m => m.CompanyName, "你的公司名1")
.With(m => m.Phone, "13900000001").Go();
当前增加的SQL语句:
INSERT[dbo].[Customers]
([CustomerID], [CompanyName], [Phone])
VALUES('YOUR1', '你的公司名1', '13900000001');
4、注意事项:
(1)、如果有自增加字段,需要在对应属性增加[IdentityFiled] 特性
如: [IdentityFiled]
public string CustomerID { get; set; }
(2)则生成时有 IdentityFiled 特性是的SQL语句
INSERT [dbo].[Customers]([CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax])
VALUES('你的公司名', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '1390000000', NULL);
SELECT [CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address], [City], [Region], [PostalCode], [Country], [Phone], [Fax]
FROM [dbo].[Customers]
WHERE [CustomerID] = SCOPE_IDENTITY();
(3)指定列值增加时有 IdentityFiled 特性是的SQL语句
INSERT [dbo].[Customers]([CustomerID], [CompanyName], [Phone])
VALUES('YOUR1', '你的公司名1', '13900000001');
SELECT [CustomerID], [CompanyName], [Phone]
FROM [dbo].[Customers]
WHERE [CustomerID] = SCOPE_IDENTITY();
关于相关特性会在后续博文中介绍
二、更新记录
1、工厂一个实例仓储
var repository = RepoFactory.Create<Customers>();
2、使用实例更新
Customers customers = new Customers { CustomerID = "YOURC", CompanyName = "你的公司名", Phone = "1390000000" };
repository.Update().For(customers).Go();
生成的SQL语句
UPDATE [dbo].[Customers]
SET [CustomerID] = 'YOURC', [CompanyName] = '你的公司名', [ContactName] = NULL, [ContactTitle] = NULL, [Address] = NULL, [City] = NULL, [Region] = NULL, [PostalCode] = NULL, [Country] = NULL, [Phone] = '1390000000', [Fax] = NULL WHERE [CustomerID] = 'YOURC', [CompanyName] = '你的公司名';
3、指定列值更新
repository.Update()
.Set(m => m.CompanyName, "你的公司名100")
.Set(m => m.Phone, "13900000023").Where(m => m.CustomerID == "YOUR1").Go())
生成的SQL语句
UPDATE [dbo].[Customers]
SET [CompanyName] = '你的公司名100', [Phone] = '13900000023'
WHERE ([dbo].[Customers].[CustomerID] = 'YOUR1');
三、删除记录
1、工厂一个实例仓储
var repository = RepoFactory.Create<Customers>();
2、使用实例删除
Customers customers = new Customers { CustomerID = "YOURC", CompanyName = "你的公司名", Phone = "1390000000" };
repository.Delete().For(customers).Go();
生成的SQL语句
DELETE [dbo].[Customers] WHERE [CustomerID] = 'YOURC', [CompanyName] = '你的公司名';
3、指定条件删除
repository.Delete().Where(m => m.CustomerID == "YOUR1").Go();
生成的SQL语句
DELETE [dbo].[Customers]
WHERE ([dbo].[Customers].[CustomerID] = 'YOUR1');
轻量ORM-SqlRepoEx (四)INSERT、UPDATE、DELETE 语句的更多相关文章
- mysql 事务是专门用来管理insert,update,delete语句的,和select语句一点不相干
1.mysql 事务是专门用来管理insert,update,delete语句的,和select语句一点不相干 2.一般来说,事务是必须满足4个条件(ACID): Atomicity(原子性).Con ...
- mysql数据恢复 insert\update\delete 工具MyFlash
一.简介MyFlash是由美团点评公司技术工程部开发维护的一个回滚DML操作的工具.该工具通过解析v4版本的binlog,完成回滚操作.相对已有的回滚工具,其增加了更多的过滤选项,让回滚更加容易. 该 ...
- PHP5: mysqli 插入, 查询, 更新和删除 Insert Update Delete Using mysqli (CRUD)
原文: PHP5: mysqli 插入, 查询, 更新和删除 Insert Update Delete Using mysqli (CRUD) PHP 5 及以上版本建议使用以下方式连接 MySQL ...
- 关于MyBatis mapper的insert, update, delete返回值
这里做了比较清晰的解释: http://mybatis.github.io/mybatis-3/java-api.html SqlSession As mentioned above, the Sql ...
- [Hive - LanguageManual] DML: Load, Insert, Update, Delete
LanguageManual DML Hive Data Manipulation Language Hive Data Manipulation Language Loading files int ...
- insert update delete 语法 以及用法
insert update delete 被称为 数据定义语句语句 也就是数据的增加 修改 删除 其中不包括查询 譬如: create database -创建数据库 alter database - ...
- PL/SQL轻量版(四)——存储函数/存储过程与触发器
概述 ORACLE 提供可以把 PL/SQL 程序存储在数据库中,并可以在任何地方来运行它.这样就叫存储过程或函数.过程和函数统称为 PL/SQL 子程序,他们是被命名的 PL/SQL 块,均存储在数 ...
- sql中同一个Trigger里同时包含Insert,Update,Delete
sql中同一个Trigger里同时包含Insert,Update,Delete SQLServer是靠Inserted表和Deleted表来处理的,判断一下就可以了,只不过比ORACLE麻烦一点 cr ...
- mybatis select/insert/update/delete
这里做了比较清晰的解释: http://mybatis.github.io/mybatis-3/java-api.html SqlSession As mentioned above, the Sql ...
- LINQ体验(9)——LINQ to SQL语句之Insert/Update/Delete操作
我们继续讲解LINQ to SQL语句,这篇我们来讨论Insert/Update/Delete操作.这个在我们的程序中最为常用了.我们直接看例子. Insert/Update/Delete操作 插入( ...
随机推荐
- Oracle 过程中变量赋值
create or replace function get_sal1(id employees.employee_id%type) return number is sal employees.sa ...
- 使用setInterval函数改变网页背景的颜色
var icolor=0; var iNum=256; var iID=setInterval(setbgColor, 500); function setbgColor() { body.backg ...
- [转]v$parameter, v$parameter2, v$system_parameter, v$system_parameter2, v$spparameter区别
本文转自:http://blog.csdn.net/huang_xw/article/details/617389 1 v$parameter v$parameter显示的是session级的参数. ...
- 修改Linux时区的2种办法
由于Azure 上所有的服务时间都采用了 UTC 时间.UTC 时间比中国时间晚 8 个小时,该如何按照自己的需要来进行修改呢,下面提供2种办法以供参考: 1.修改 /etc/localtime 文件 ...
- mvc路由引起异步调用web服务的问题
从一篇blog得知使用脚本可以异步调用Web服务,觉得很新鲜,因为自己很少用到Web服务,所以决定写一写看看什么效果. 首先在UI项目(我使用的是MVC4.0)里创建一个Web服务. 添加Web服务后 ...
- python的返回值
1.返回值的作用 函数并非总是直接显示输出,相反,它可以处理一些数据,并返回一个或一组值.函数返回的值被称为返回值.在函数中,可使用return语句将值返回到调用函数的代码行.返回值让你能够将程序的大 ...
- 从零开始的全栈工程师——PHP篇 ( 单词汇总 ) ( php解决文字乱码 )
解决乱码: header("Content-Type: text/html;charset=utf-8"); 单词 局部的: local 全局的: global 静态的: stat ...
- html+css定位篇
position absolute相对于父元素移动,不在父元素范围内时,可能和其他元素重叠 relative相对于初始位置来进行移动 fixed相对于浏览器进行定位,无论滑轮如何滚动,始终出现在浏览器 ...
- JS基础学习——对象
JS基础学习--对象 什么是对象 对象object是JS的一种基本数据类型,除此之外还包括的基本数据类型有string.number.boolean.null.undefined.与其他数据类型不同的 ...
- H5左滑删除JS插件
<script type="text/javascript"> /** * zepto插件:向左滑动删除动效 * 使用方法:$('.itemWipe').touchWi ...