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框架有很多 ...
随机推荐
- protobuf文档翻译-安装,数据格式及编码规范
Install Download protobuf: https://github.com/protocolbuffers/protobuf/releases unzip protoc-3.8.0-l ...
- JAVA数据结构之哈希表
Hash表简介: Hash表是基于数组的,优点是提供快速的插入和查找的操作,编程实现相对容易,缺点是一旦创建就不好扩展,当hash表被基本填满的时候,性能下降非常严重(发生聚集引起的性能的下降),而且 ...
- Oracle数据导入导出命令
IMP 和EXP命令 Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处 ...
- csps模拟8990部分题解
题面: 666: 重点在题意转化:每个数可以乘k,代价为k,可以减一,代价为1, 所以跑最短路即可 #include<iostream> #include<cstdio> #i ...
- 概率期望——cf round362 div1
给定n个数,求i的位置的期望 那么反向考虑,j!=i排在i前面的概率是0.5,那么对i的位置的期望贡献就是1*0.5 这题就是拓展应用一下 #include<bits/stdc++.h> ...
- Delphi 最小化窗体到托盘
---- 现在很多的应用程序都有这样一种功能,当用户选择最小化窗口时,窗口不是象平常那样最小化到任务栏上,而是“最小化”成一个任务栏图标.象FoxMail 3.0 NetVampire 3.0等都提供 ...
- HttpClient 使用案例
package com.qifeng.config.ygx.common.utils; import com.alibaba.fastjson.JSON; import com.alibaba.fas ...
- Vue-组件详解
转载:https://segmentfault.com/a/1190000015199363 查看原文站点,更多扩展内容及更佳阅读体验! 组件详解 组件与复用 Vue组件需要注册后才可以使用.注册有全 ...
- csdn的富文本编辑器(html)格式的文章,添加的代码格式粘贴到项目中总是不对,我这里是maven的pom文件。
在用富文本编辑器(html)格式编辑的时候,总是出现将pom文件的配置从csdn粘贴到项目中发现很多红,是因为自己在设置的时候有问题. 因为我们的是pom.xml,这里原来设置的java呀或者js为了 ...
- 通过aapt查看apk包名和第一个启动的activity
步骤: ps:aapt是sdk 自带的一个工具,在sdk\builds-tools目录下: 1. cmd启动控制台, 默认是c盘,输入“d:” 即可转到D盘目录 2. 到D盘后 输入cd 子文件目录转 ...