SQL Server

7.数据库

a 夏天 提交于 2020-07-28 20:08:24
一、三大范式: 第一范式:每一列都是不可拆分的 第二范式:属性完全依赖于主键 第三范式:属性不能传递依赖于主属性 https://blog.csdn.net/qq_15037231/article/details/61628143 二、主键 <1>自增ID 优:数据库自动增加,int/bigint,SQL Server默认聚集索引,空间小,可以有业务意义 劣:多库环境、不同环境的数据库ID冲突 <2>GUID 优:GUID程序生成的,全球唯一,插入数据库,不会错误的join,无限的,方便导入 劣:空间大,没有自身含义,没有聚集索引(创建时间来聚集) 三、外键 优:外键做数据关联,级联删除,有严格数据关系的时候用外键 劣:导入麻烦,增删改时数据库多一步操作 合理使用:尽量少的使用外键,大型互联网项目瓶颈一般都在数据库,尽量少的让数据库做事 四:数据库事务 多条sql作为一个整体提交给数据库系统,要么全部执行完成,要么全部取消,是一个不可分割的逻辑单元 原子性:要么都成功,要么都失败 一致性:事务执行完,数据都是正确的 隔离性:两个事务同时操作同一张表,B事务要么是在A事务前完成,要么在A事务完成时执行(锁表) 持久性:数据提交后 就固话下来 高并发的系统:死锁其实是不可避免的,尽量减少 1.按照固定顺序操作数据 2.事务尽量的简短,更不要在事务期间等待,降低并发,锁的隔离级别 来源:

使用Docker运行SQL Server

风格不统一 提交于 2020-07-28 19:55:23
现在.net core已经跨平台了,大家也都用上了linux用上了docker。跟.net经常配套使用的SQL SERVER以前一直是windows only,但是从SQL Server 2017开始已经支持运行在docker上,也就说现在SQL Serer已经可以运行在linux下了。 下面在Ubuntu 16.4上演示安装并使用SQL Server 2019-CTP3.2 SQL Server in Docker sudo docker pull mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu 使用docker pull命令从docker hub拉取sqlserver 2019-ctp3.2的镜像 sudo mkdir /hd2/sqlserver2019_data sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=dev@123," -p 14330:1433 --name sqlserver2019 -v /hd2/sqlserver2019_data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu 使用docker run 命令启动容器,其中要注意的是使用

1.NetDh框架之数据库操作层--Dapper简单封装,可支持多库实例、多种数据库类型等(附源码和示例代码)

纵然是瞬间 提交于 2020-07-28 19:03:49
1.NetDh框架开始的需求场景 需求场景: 1.之前公司有不同.net项目组,有的项目是用SqlServer做数据库,有的项目是用Oracle,后面也有可能会用到Mysql等,而且要考虑后续扩展成主从库、多库的需求。( 其实不管有没有这个需求,Dapper的封装应当像NetDh框架里封装的那样使用) ; 2.涉及日志操作类的设计,需要记录用户操作日志、记录系统异常日志等; 3.涉及缓存操作类的设计,这点不用需求都应该当考虑,不管是小项目的内存缓存还是大项目中的Redis/Memcache等; 4.涉及二次开发模式简单的设计。因为多个客户需要同一个项目产品,但是客户之间对该产品的需求点又有些不一样。 本文先讲为了第1点需求而封装的数据库操作类,其它三点在接下来文章中也会介绍。 2.ORM框架Dapper介绍 Dapper是轻量级高效的框架,它高效原因是利用 Emit技术 + 各种解析缓存 + DataReader 。 Dapper可以在所有Ado.net Providers下工作,包括SQL Server, Oracle, MySQL , SQLite, PostgreSQL, sqlce, firebird 等,这些数据库操作类都有实现IDbConnection接口。你看源码会发现,Dapper提供的public方法大都是对IDbConnection的扩展。

遇到一个在 sql server 查询中,条件语句不区分大小写的问题

泄露秘密 提交于 2020-07-28 17:44:24
也就是说 where name='x' 和 where name='X' 查询到的结果是一样的 网上有一种处理方式是可以在 where 后的字段名前加 binary:( https://www.cnblogs.com/paulwhw/p/12376226.html ) 不过更根本的解决方法也许应该是更改数据库的排序规则:( https://www.cnblogs.com/jerviscui/p/11791129.html ) 默认为:Chinese_PRC_CI_AS 修改为:Chinese_PRC_CS_AS 当然也可以修改表的排序规则,或者在查询语句中附加排序规则,就不再细列了。。。 MSDN: https://docs.microsoft.com/zh-cn/sql/relational-databases/collations/collation-and-unicode-support 来源: oschina 链接: https://my.oschina.net/u/4348132/blog/4285342

阿里云新品发布会周刊第53期 丨 数据泄露的危害有多大?该怎么保护我们的数据信息安全

天大地大妈咪最大 提交于 2020-07-28 08:43:41
点击订阅新品发布会 新产品、新版本、新技术、新功能、价格调整,评论在下方,下期更新!关注更多新品发布会! 热门阅读 1、数据泄露的危害有多大?该怎么保护我们的数据信息安全 在信息时代阔步发展的今天,人们在享受着信息化社会所带来的智能、高效、便捷的同时,也对自身的个人信息安全产生了深深的担忧……“信息裸奔”让人们成了“透明人”,隐私泄露层出不穷,财产受损现象频繁发生。你的信息安全吗?数据泄露的危害有多大?该怎么保护我们的数据信息安全? 查看原文 2、疫情之后,半数美国人认为智能设备中语音控制必不可少 据Syntiant近期进行的一项用户调查显示,受新冠疫情影响,超过一半的美国人认为智能设备中语音控制功能必不可少。其中,免提智能手机和电视遥控器的优先级比较高,因为消费者选择语音控制以减少接触。 查看原文 3、深度数据对比分析:阿里云服务器和腾讯云服务器那家好? 服务器具有维护成本低,安全稳定,高可扩展性和 7 X 24 小时的售后支持的优势,因此云服务器成为中小企业建站的首要选择。国内的云服务器竞争也进入了跑马圈地的时代,以阿里云、腾讯云、百度云三大BAT为首,不断推出优惠活动,争取更多的用户体量; 查看原文 4、在商业中,如何与人工智能建立共生关系? 如今这个时代,不管是有意还是不经意,我们都在接触或使用人工智能。在我们的日常生活和商业实践中,各种在线的设备

世界领先的计划和调度平台PlanetTogether,为您的 ERP实现敏捷制造

微笑、不失礼 提交于 2020-07-28 07:20:32
PlanetTogether是世界领先的计划和调度平台,能提供更好的精益、敏捷和能力计划;用甘特图优化排序;具有按工厂,每月订阅的可扩展性;为您的ERP系统实现敏捷制造。 什么是APS软件? 先进的计划与计划(APS)软件可实现快速灵活的产能计划,生产计划以及与现有ERP系统连接的MRP(物料需求计划)。 通过更快的生产提前期来增加销售 通过使制造与需求保持一致来减少库存 通过更高效的生产运行降低单位成本 通过容量可见性、方案和分析来改进决策 为什么PlanetTogether是排名第一的APS平台? 通过以下方式比较生产计划解决方案: 可维护性 易用性 功能性 可实施性 放心地规划您的Smart Factory和Industry 4.0计划! 顶级ERP和MES平台提供商与PlanetTogether集成 集成您的核心IT基础架构,ERP,MRP或MES系统。PlanetTogether是针对SAP ERP,SAP ByDesign,Microsoft Dynamics 365 for Operations(AX),Aptean Ross,SQL Server,QAD和许多其他行业领导者的主要APS集成解决方案。 为智能工厂和工业4.0计划做好准备。 可视化和调整生产能力 无论您是在世界各地还是在一个地方拥有工厂和仓库,努力实现 智能工厂或工业4.0状态,

Valentina Studio for mac(数据库管理器) v10.4.12

拜拜、爱过 提交于 2020-07-28 06:09:50
Valentina Studio for mac是您使用MySQL,MariaDB,SQL Server,PostgreSQL,SQLite和Valentina DB数据库的通用数据库管理工具。valentina studio mac下载可让您连接所有主要数据库,运行查询并生成图表,以更好地了解您的关键任务业务数据 。 Valentina Studio for mac https://www.macw.com/mac/2338.html 软件功能 Valentina Forms 直观地创建和添加表单,然后您的用户可以在免费的Valentina Studio中使用它们。 数据传输 然后,您可以指定源/目标表和字段的映射,并将记录从db1加载到db2。 数据库持续集成 Valentina Studio Pro中的数据库持续集成(CI)工具将良好的软件开发实践应用于数据库。 SQL DIFF 比较两个数据库的模式并生成可以将第一个模式转换为第二个模式的SQL脚本。 数据库建模 使用首要的Database Schema Editor反向和正向工程工具直观地建模数据库。 报告编辑器 使用全套设计元素将查询转换为具有视觉效果的企业报告。 Database Query Builder 使用Query Builder直观地构建SQL查询。直接处理作为要创建的查询的一部分的表和链接。 SQL编辑器

1.NetDh框架之数据库操作层--Dapper简单封装,可支持多库实例、多种数据库类型等(附源码和示例代码)

狂风中的少年 提交于 2020-07-28 04:16:38
1.NetDh框架开始的需求场景 需求场景: 1.之前公司有不同.net项目组,有的项目是用SqlServer做数据库,有的项目是用Oracle,后面也有可能会用到Mysql等,而且要考虑后续扩展成主从库、多库的需求。( 其实不管有没有这个需求,Dapper的封装应当像NetDh框架里封装的那样使用) ; 2.涉及日志操作类的设计,需要记录用户操作日志、记录系统异常日志等; 3.涉及缓存操作类的设计,这点不用需求都应该当考虑,不管是小项目的内存缓存还是大项目中的Redis/Memcache等; 4.涉及二次开发模式简单的设计。因为多个客户需要同一个项目产品,但是客户之间对该产品的需求点又有些不一样。 本文先讲为了第1点需求而封装的数据库操作类,其它三点在接下来文章中也会介绍。 2.ORM框架Dapper介绍 Dapper是轻量级高效的框架,它高效原因是利用 Emit技术 + 各种解析缓存 + DataReader 。 Dapper可以在所有Ado.net Providers下工作,包括SQL Server, Oracle, MySQL , SQLite, PostgreSQL, sqlce, firebird 等,这些数据库操作类都有实现IDbConnection接口。你看源码会发现,Dapper提供的public方法大都是对IDbConnection的扩展。

1.NetDh框架之数据库操作层--Dapper简单封装,可支持多库实例、多种数据库类型等(附源码和示例代码)

安稳与你 提交于 2020-07-27 21:54:15
1.NetDh框架开始的需求场景 需求场景: 1.之前公司有不同.net项目组,有的项目是用SqlServer做数据库,有的项目是用Oracle,后面也有可能会用到Mysql等,而且要考虑后续扩展成主从库、多库的需求。( 其实不管有没有这个需求,Dapper的封装应当像NetDh框架里封装的那样使用) ; 2.涉及日志操作类的设计,需要记录用户操作日志、记录系统异常日志等; 3.涉及缓存操作类的设计,这点不用需求都应该当考虑,不管是小项目的内存缓存还是大项目中的Redis/Memcache等; 4.涉及二次开发模式简单的设计。因为多个客户需要同一个项目产品,但是客户之间对该产品的需求点又有些不一样。 本文先讲为了第1点需求而封装的数据库操作类,其它三点在接下来文章中也会介绍。 2.ORM框架Dapper介绍 Dapper是轻量级高效的框架,它高效原因是利用 Emit技术 + 各种解析缓存 + DataReader 。 Dapper可以在所有Ado.net Providers下工作,包括SQL Server, Oracle, MySQL , SQLite, PostgreSQL, sqlce, firebird 等,这些数据库操作类都有实现IDbConnection接口。你看源码会发现,Dapper提供的public方法大都是对IDbConnection的扩展。

(4.43)sql server中的set

六眼飞鱼酱① 提交于 2020-07-27 14:34:08
转自官网: https://docs.microsoft.com/zh-cn/sql/t-sql/statements/set-statements-transact-sql?view=sql-server-ver15 Transact-SQL 编程语言提供了一些 SET 语句,这些语句可以更改特定信息的当前会话处理。 SET 语句可分为下表中列出的几个类别。 有关使用 SET 语句设置局部变量的信息,请参阅 SET @local_variable (Transact-SQL) 。 表 1 类别 语句 日期和时间语句 SET DATEFIRST SET DATEFORMAT 锁定语句 SET DEADLOCK_PRIORITY SET LOCK_TIMEOUT 杂项语句 SET CONCAT_NULL_YIELDS_NULL SET CURSOR_CLOSE_ON_COMMIT SET FIPS_FLAGGER SET IDENTITY_INSERT SET LANGUAGE SET OFFSETS SET QUOTED_IDENTIFIER 查询执行语句 SET ARITHABORT SET ARITHIGNORE SET FMTONLY 请注意: 此功能处于维护模式并且可能会在 Microsoft SQL Server 将来的版本中被删除。 请避免在新的开发工作中使用该功能