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框架有很多 ...
随机推荐
- iOS开发系列-NSDate
NSDate API 获取当前时间 获取时间戳 创建间隔指定时间戳的Date // 获取昨天 NSTimeInterval time = 24 * 60 * 60; NSDate *date = [N ...
- dev设置子窗体的初始位置,grid控件表头的属性设置
当在父窗体上弹出子窗体时,一般设置子窗体的初始位置是居中, //在需要展示子窗体的父窗体上写这段,注意必须设置在show方法之前Form2 f2 = new Form2(); f2.MdiParent ...
- CSIC_716_20191125【面向对象编程--类以及类的实例化】
面向对象编程:是一种编程思想 对象的定义:特征与功能的集合体 优点:可扩展性强 缺点:编程复杂度高,难度偏大 类的定义:一系列对象之间相同特征与技能的结合体 调用类的时候(实例化是时候),发生的事情: ...
- Sqlite && EF Code FIRST 终极解决方案 2019.5.17
Sqlite && EF Code FIRST 终极解决方案 2019.5.17 包括根据模型自动生成数据库,初始化数据,模型改变时的自动数据迁移等 2019.12.25 更新 支持E ...
- Jmeter插件:jp@gc - Dummy Sampler
Dummy Sampler可以比较方便地模拟测试场景,自定义Request Data和Response Data 1. 安装插件:打开页面插件管理网站,下载plugins-manager.jar. 在 ...
- thinkphp 标签库
内置的模板引擎除了支持普通变量的输出之外,更强大的地方在于标签库功能. 标签库类似于Java的Struts中的JSP标签库,每一个标签库是一个独立的标签库文件,标签库中的每一个标签完成某个功能,采用X ...
- Arcmap中处理面图层中空白碎片
在面数据中,有时候在一个面要素中会出现碎片,而我们大多时候不希望这些碎片存在(图1),下面介绍通过Editor工具把这些碎片处理掉.
- UVA-699-The Falling Leaves-二叉树+递归
Each year, fall in the North Central region is accompanied by the brilliant colors of the leaves on ...
- QT 获取文件的路径、打开文件的弹出对话框
1.打开获取文件夹路径的对话框 QString filePath = QFileDialog::getExistingDirectory(this, "请选择文件保存路径...", ...
- pip install mysql-python报错1. Unable to find vcvarsall.bat 2 fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory 3.error: command 'mt.exe' failed with exit statu
最近在安装mysql -python 时报错折腾了半天,通过以下方法解决: 1. pip install mysql-python报错 Unable to find vcvarsall.bat (参考 ...