轻量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操作 插入( ...
随机推荐
- Hadoop 2.7.2 集群搭建(转载)
http://blog.csdn.net/u010048823/article/details/51913608
- html 跨过CSRF验证
/* CSRF配置 */function csrfSafeMethod(method) { // these HTTP methods do not require CSRF protection r ...
- [转]ASP.NET Web API系列教程(目录)
本文转自:http://www.cnblogs.com/r01cn/archive/2012/11/11/2765432.html 注:微软随ASP.NET MVC 4一起还发布了一个框架,叫做ASP ...
- EFCodeFirst 各种命令整理
1.Enable-Migrations (创建迁移目录:Migrations,如果有多个数据上下文可以用 -ContextTypeName 命令迁移对应的数据上下文 ) 2.Add-Migratio ...
- js之正则表达式基础
字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在.比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦, ...
- python 爬虫初试
python3.5 抓网易新闻的排行榜上的新闻,主要用自带的request模块和lxml import re from urllib import request from lxml import ...
- python dict list tuple
Dict 创建 somedict = {} somedict = {"key": value} a = dict(one=1, two=2, three=3) c = dict(z ...
- String变量的两种创建方式
在java中,有两种创建String类型变量的方式: String str01="abc";//第一种方式 String str02=new String("abc&qu ...
- python 函数,内置函数
1.函数 1.1 定义函数 ·函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 (). ·任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数. ·函数的第一行语句可以选择性 ...
- dos.ORM配置和使用
处理oralce,sqlserver,access及其他常用数据库,下载和学习地址 1.web.config配置数据库连接字符串,以及数据库类型: <connectionStrings>& ...