SQL ORM框架
【LINQ】
using (SqlConnection conn = new SqlConnection(conStr)) {
string sql = $@"select * from vip_e_coupons_policy where blocno=@blocno";
}
增删改:conn.Execute(sql)
查:conn.Query<T>(sql)
SingleOrDefault():返回值序列的单个特定元素;如果未找到此类元素,则返回默认值。
参考:https://www.jb51.net/article/155419.htm
————————————————————————————————————————————————————————————
【EF CORE】
API:https://docs.microsoft.com/zh-cn/ef/core/querying/raw-sql?tdsourcetag=s_pctim_aiomsg
自动生成DTO,进入.NET CORE项目API目录下,执行下面的命令:
dotnet ef dbcontext scaffold "Host=xx.xxxxxxx.com;Database=dbName;Username=postgres;Password=密码" Npgsql.EntityFrameworkCore.PostgreSQL -f -o /home/xxxxx/PROJECT/NET\ CORE/projName.API/projName.Entities/Model/DTO/
————————————————————————————————————————————————————————————
【SqlSugar】
API:http://www.codeisbug.com/Doc/8/1165 http://www.codeisbug.com/Doc/8/1129
IgnoreColumns(ignoreAllNullColumns: true)
//插入
tablenameDTO insertObj = new tablenameDTO();
insertObj = xxxxxxxxxx;
db.Insertable<tablenameDTO>(insertObj).ExecuteCommand();
//更新
tablenameDTO updateObj= new tablenameDTO ();
updateObj= db.Queryable<tablenameDTO >().Where().ToList().First();
db.Updateable(updateObj).Where().ExecuteCommand();
//删除
db.Deleteable<tablenameDTO>().With().ExecuteCommand();
//查询
db.SqlQueryable<tablenameDTO>("sql").ToList();
db.Queryable<tablenameDTO>().Where().ToList();
————————————————————————————————————————————————————————————
【Dapper】
Dapper是.Net下的一个轻量级ORM(Object Relational Mapping 对象关系映射)框架
添加Dapper的Nugets包
//查询
var result1 = conn.Query<xxxxDTO>($@"select * from tablename where rtrim(id)='{ req.no }'").ToList();
if (result1.Count() > 0){
return Success();
}
else {
return Failed();
}
————————————————————————————————————————————————————————————
持久化是将程序数据在持久状态和瞬时状态间转换的机制。
即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。
持久化的主要应用是将内存中的对象存储在数据库中,或者存储在磁盘文件中、XML数据文件中等等。
————————————————————————————————————————————————————————————
【删除】
当你不再需要该表时,用【drop】
当你仍要保留该表,但要删除所有记录时,用【truncate】
当你要删除部分记录时, 用【delete】
例如:
truncate table hotel_area restart IDENTITY; //重置自增字段
truncate table hotel_area; //清空表
【COUNT(*) 函数】
—————————返回在给定的选择中被选的行数。
https://www.w3school.com.cn/sql/sql_func_count_ast.asp
【replace】
REPLACE(String,from_str,to_str) 即:将String中所有出现的from_str替换为to_strstring
right(字段名,length)从结尾截取
left(字段名,length)从开头截取
sql = $@"select * from mstinfo where roomno='{req.roomno}' and resphone='{req.phone}' or right((REPLACE(idno,' ','')),6)='{req.idno}'"; //去掉空格后,截取身份证后6位
SQL ORM框架的更多相关文章
- SQL学习笔记八之ORM框架SQLAlchemy
阅读目录 一 介绍 二 创建表 三 增删改查 四 其他查询相关 五 正查.反查 一 介绍 SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进 ...
- 最好的5个Android ORM框架
在开发Android应用时,保存数据有这么几个方式, 一个是本地保存,一个是放在后台(提供API接口),还有一个是放在开放云服务上(如 SyncAdapter 会是一个不错的选择). 对于第一种方式, ...
- [Android]Android端ORM框架——RapidORM(v2.1)
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/6020412.html [Android]Android端ORM ...
- [Android]Android端ORM框架——RapidORM(v2.0)
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5626716.html [Android]Android端ORM ...
- 轻量级ORM框架——第一篇:Dapper快速学习
我们都知道ORM全称叫做Object Relationship Mapper,也就是可以用object来map我们的db,而且市面上的orm框架有很多,其中有一个框架 叫做dapper,而且被称为th ...
- ORM之殇,我们需要什么样的ORM框架?
最近在研究ORM,究竟什么样的框架才是我们想要的 开发框架的意义在于 开发更标准,更统一,不会因为不同人写的代码不一样 开发效率更高,无需重新造轮子,重复无用的代码,同时简化开发流程 运行效率得到控制 ...
- 轻量级ORM框架初探-Dapper与PetaPoco的基本使用
一.EntityFramework EF是传统的ORM框架,也是一个比较重量级的ORM框架.这里仍然使用EF的原因在于为了突出轻量级ORM框架的性能,所谓有对比才有更优的选择. 1.1 准备一张数据库 ...
- ORM框架示例及查询测试,上首页修改版(11种框架)
继上次ORM之殇,我们需要什么样的ORM框架? 整理了11个ORM框架测试示例,通过示例代码和结果,能很容易了解各种框架的特性,优缺点,排名不分先后 EF PDF XCODE CRL NHiberna ...
- [Android]Android端ORM框架——RapidORM(v1.0)
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4748077.html Android上主流的ORM框架有很多 ...
随机推荐
- 【JZOJ6360】最大菱形和(rhombus)
description analysis 容易想到把原矩阵翻转\(45°\),然后每个数再用\(0\)隔开 然后就变成了求最大子正方形,求完二维前缀和之后就很好做了 code #pragma GCC ...
- CSS——before和after伪元素
之所以被称为伪元素,是因为他们不是真正的页面元素,html没有对应的元素,但是其所有用法和表现行为与真正的页面元素一样,可以对其使用诸如页面元素一样的css样式,表面上看上去貌似是页面的某些元素来展现 ...
- python相关软件安装流程图解——linux 安装python3——Python-3.7.1
请先确保已经安装了虚拟机 python相关软件安装流程图解——虚拟机安装——CentOS-7-x86_64-DVD-1810——CentOS-01下载 https://www.cnblogs.com/ ...
- from Crypto.Cipher import AES加密解密
一.代码 from Crypto.Cipher import AES import base64 """ AES加密算法 """ #加密 d ...
- truncate和delete的区别
TRUNCATE 命令用法 语法 TRUNCATE TABLE name 参数 name 是要截断的表的名称或要删除其全部行的表的名称. 注释 TRUNCATE TABLE 在功能上与不带 W ...
- JAVA入门各种API参考
java sdk: https://docs.oracle.com/javase/8/docs/api/ servlet api: http://tomcat.apache.org/tomcat-8. ...
- Java 内部类,成员类,局部类,匿名类等
根据内部类的位置不同,可将内部类分为 :成员内部类与局部内部类. class outer{ class inner{//成员内部类 } public void method() { class loc ...
- Java 面试题经典 77 问(含答案)!
金三银四了,3月底,4月初,找工作换单位的黄金时期.4月初将会有有一大批职场人士流动... 作为Java开发码农的你是不是也在蠢蠢欲动,或者已经搞了几轮车轮战了? 我们为大家准备了 77 道经典 Ja ...
- Django之单表查询——神奇的双下划线
1.filter中的单表查询 # 查询id>1且id<4的结果 ret = models.Person.objects.filter(id__gt=1,id__lt=4) print(re ...
- sql server2014显示sa无法登录的错误
博主用的是sql serser2014,不过这个问题的方法也适用于2012等其他版本. 当用sa登录的时候,提示如下错误: A connection was successfully establis ...