SQL Server

SQL Server事务的应用

て烟熏妆下的殇ゞ 提交于 2020-08-10 00:23:17
目录 事务概念 事务的ACID特性 如何定义事务 事务案例 1.先创建一个Users表 2.语句 3.查询一下看执行结果 事务概念 事务就是被绑定在一起作为一个逻辑工作单元的SQL语句组,如果任何一个语句操作失败那么整个操作就被失败,进而回滚到操作前状态,或者是上个节点。 事务是作为单个工作单元而执行的一系列操作,比如查询和修改数据等。 事务的ACID特性 原子性(Atomicity) :事务的原子性是指一个事务中包含的一条语句或者多条语句构成了一个完整的逻辑单元,这个逻辑单元具有不可再分的原子性。这个逻辑单元要么一起提交执行全部成功,要么一起提交执行全部失败。 一致性(Consistency) :可以理解为数据的完整性,事务的提交要确保在数据库上的操作没有破坏数据的完整性,比如说不要违背一些约束的数据插入或者修改行为。一旦破坏了数据的完整性,SQL Server 会回滚这个事务来确保数据库中的数据是一致的。 隔离性(Isolation) :与数据库中的事务隔离级别以及锁相关,多个用户可以对同一数据并发访问而又不破坏数据的正确性和完整性。但是,并行事务的修改必须与其它并行事务的修改相互独立,隔离。 但是在不同的隔离级别下,事务的读取操作可能得到的结果是不同的。 持久性(Durability) :数据持久化,事务一旦对数据的操作完成并提交后,数据修改就已经完成

初始MySQL

[亡魂溺海] 提交于 2020-08-09 22:34:49
初始MySQL 为什么要学习数据库? 岗位技能需求 存储数据的方法 程序、网站中,需要长久保存大量数据 数据库是几乎软件体系中最核心的一个存在 什么是数据库? 数据库(Database)是:按照数据结构来组织、存储和管理数据的仓库。 数据库总览 关系型数据库(SQL) MySQL、Oracle、SQL Server、SQLite、DB2等等 关系型数据库通过外键关联来建立表与表之间的关系 菲关系型数据库(NoSQL) Redis、MongoDB等 非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自 身的属性来决定 什么是RDBMS? 关系数据库管理系统(Relational Database Management System) 特点: 1.数据以表格的形式出现 2.每行为各种记录名称 3.每列为记录名称所对应的数据域 4.许多的行和列组成一张表单 5.若干的表单组成database MySQL简介 小海豚的 官网 概念 : 是现在流行的 开源 的, 免费 的 关系型 数据库 历史 : 由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。 特点 : 免费 , 开源数据库 小巧 , 功能齐全 使用便捷 可运行于Windows或Linux操作系统 可适用于中小型甚至大型网站应用 MySQL环境搭建 建议大家使用压缩版,安装快,方便.不复杂

SQL Server 数据库【系统设计大作业】【教学管理系统】【完整代码】

﹥>﹥吖頭↗ 提交于 2020-08-09 22:28:51
目 录 1、课本【P281-P287】 2、SQL语句【建立数据表(6个表)、插入数据】 2.1、中文字段表示 2.2、英文字段表示 3、新建视图 3.1、6表总视图 3.2、总学分(学号,学分) 3.3、总学分报表 4、查询练习 1、课本【P281-P287】 2、SQL语句【建立数据表(6个表)、插入数据】 使用到的所有SQL语句,都在这了!!! 2.1、中文字段表示 --表1-学生表 CREATE TABLE 学生表 ( 学号 char(8) PRIMARY KEY, 姓名 char(8), 性别 char(2) CHECK( 性别 IN ('男', '女') ), 所在系 char(20), 专业 char(20), 班号 char(6) ) --表2-课程表 CREATE TABLE 课程表 ( 课程号 char(8) PRIMARY KEY, 课程号 varchar(30) NOT NULL, 学分 tinyint CHECK( 学分 BETWEEN 1 AND 8 ), 开课学期 tinyint CHECK( 开课学期 BETWEEN 1 AND 12 ) , 课程性质 char(4) CHECK( 课程性质 IN ('必修', '选修') ), 考试性质 char(4) CHECK( 考试性质 IN ('考试', '考查') ), 授课时数 tinyint

如何仅从SQL Server DateTime数据类型返回日期

我只是一个虾纸丫 提交于 2020-08-09 21:41:11
问题: SELECT GETDATE() Returns: 2008-09-22 15:24:13.790 回报: 2008-09-22 15:24:13.790 I want that date part without the time part: 2008-09-22 00:00:00.000 我希望该日期部分没有时间部分: 2008-09-22 00:00:00.000 How can I get that? 我该怎么办? 解决方案: 参考一: https://stackoom.com/question/TPJ/如何仅从SQL-Server-DateTime数据类型返回日期 参考二: https://oldbug.net/q/TPJ/How-to-return-only-the-Date-from-a-SQL-Server-DateTime-datatype 来源: oschina 链接: https://my.oschina.net/u/3797416/blog/4301413

学习笔记-Sql Server事务

帅比萌擦擦* 提交于 2020-08-09 21:36:34
事务的定义 事务是作为单个逻辑单元执行的一系列操作,它是一个不可分割的工作逻辑单元。它包含了一组数据库操作命令,这组命令要么全部执行,要么全部不执行。 举个例子,我们经常用到的 ATM 存取款机,比如转账的时候,是先减去转出账户的金额,然后再在指定转入账户的金额加上转出的金额。如果刚好这个时候转出的操作已经执行完成,但是由于系统的故障,导致转入的操作失败了。那么怎么办?这就需要用到事务了,只要事务里面有一条命令未成功执行,那么数据就会回滚到事务开始之前的状态。 事务的特性 原子性(Atomicity) 事务是数据库的逻辑工作单位,事务中包括的诸操作要么全做,要么全不做。 事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。 一致性(Consistency) 事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。 一个事务可以封装状态改变(除非它是一个只读的)。事务必须始终保持系统处于一致的状态,不管在任何给定的时间并发事务有多少。 也就是说:如果事务是并发多个,系统也必须如同串行事务一样操作。其主要特征是保护性和不变性(Preserving an Invariant). 以转账案例为例,假设有五个账户,每个账户余额是100元,那么五个账户总额是500元

在SQL Server中使用JOIN更新表?

牧云@^-^@ 提交于 2020-08-09 14:50:43
问题: I want to update a column in a table making a join on other table eg: 我想更新在其他表上进行联接的表中的列,例如: UPDATE table1 a INNER JOIN table2 b ON a.commonfield = b.[common field] SET a.CalculatedColumn= b.[Calculated Column] WHERE b.[common field]= a.commonfield AND a.BatchNO = '110' But it is complaining : 但它在抱怨: Msg 170, Level 15, State 1, Line 2 消息170,第15级,州1,第2行 Line 2: Incorrect syntax near 'a'. 第2行:“ a”附近的语法不正确。 What is wrong here? 怎么了 解决方案: 参考一: https://stackoom.com/question/6jIR/在SQL-Server中使用JOIN更新表 参考二: https://oldbug.net/q/6jIR/Update-a-table-using-JOIN-in-SQL-Server 来源: oschina 链接: https:/

免费的秋天下载中心统计系统

不羁的心 提交于 2020-08-09 14:28:25
本系统是一款免费用户下载网站统计系统,您只需将此网站建立并把您的下载文件放到网站内,系统就会根据用户每次下载进行综合统计,方便您掌握实时数据 系统内包含了常见的下载现时统计包括:所在世界国家统计,省份统计,所在城市统计,文件下载数量最多排行,文件下载大小排行,用户访问不存在文件的排行等 并可根据不同日期例如:今天,昨日,近7天,本月,本季,本年,上年等进行查看统计,便于一目了解自己用户实时下载信息 并且支持基础常见如:防外链,IP限制,范围限制,文件后缀限制等. 1.支持自定标题 (显示自己系统的名称 如:xxxx统计中心 ) 自己的专属 2.支持世界范围下载各国家统计分类 3.支持国内各市级下载数据统计 3.支持国内各省级夏下载排行统计 2.支持不存在文件访问统计 4.支持下载数量最多文件统计 5.支持按日期下属数量统计 4.支持下载文件总量大小统计 2.支持数据库文件大小实时展示 3.支持不同种类日志统计 例如:本月,本季,本年等 3.支持按时间分组分省分文件等详细记录查看 2.支持自定下载目录,统计目录管理目录等,支持多目录设定 3.支持下载文件后缀限制 3.支持防外链下载设置 3.支持IP黑名单设置,支持单IP组IP范围IP设置 6.支持定义下载目录内所有访问管理 7.支持按时间条件进行数据清理并自动进行数据库收缩 8.支持IP库自行实时更新 9

Repository 返回 IQueryable?还是 IEnumerable?

筅森魡賤 提交于 2020-08-09 13:48:08
这是一个很有意思的问题,我们一步一步来探讨,首先需要明确两个概念(来自 MSDN): IQueryable:提供对未指定数据类型的特定数据源的查询进行计算的功能。 IEnumerable:公开枚举数,该枚举数支持在非泛型集合上进行简单迭代。 IQueryable 继承自 IEnumerable,它们俩最大的区别是,IQueryable 是表达式树处理,可以延迟查询,而 IEnumerable 只能查询在本地内存中,Repository 的概念就不多说了,在“伪 DDD”设计中,你可以把它看作是数据访问层。 下面我们先实现 Repository 返回 IEnumerable: public interface IBookRepository { Book GetById(); IEnumerable<Book> GetAllBooks(); IEnumerable<Book> GetBy....(); void Add(Book book); void Delete(Book book); void SaveChanges(); } 上面是我们的一般接口设计,包含查询、增加、删除操作,你发现并没有修改,其实我们可以先通过 GetById 操作,然后取得 Book 对象,进行修改,最后执行 SaveChanges 就可以了,在持久化数据库的时候,会判断实体状态值的概念,最后进行应用改变

SQL Server获取元数据所有方法和示例

喜你入骨 提交于 2020-08-09 12:42:22
SQL Server元数据 什么是元数据? 怎么获取元数据? 使用系统存储过程 使用系统函数 使用系统表 使用信息架构视图 什么是元数据? 元数据 (metadata) 最常见的定义为"有关数据的结构数据",或者再简单一点就是"关于数据的信息",日常生活中的图例、图书馆目录卡和名片等都可以看作是元数据。在关系型数据库管理系统 (DBMS) 中,元数据描述了数据的结构和意义。比如在管理、维护 SQL Server 或者是开发数据库应用程序的时候,我们经常要获取一些涉及到数据库架构的信息:某个数据库中的表和视图的个数以及名称 ;某个表或者视图中列的个数以及每一列的名称、数据类型、长度、精度、描述等; 怎么获取元数据? 示例数据库AdventureWorks2008: github下载地址 使用系统存储过程 元数据常用存储过程 系统存储过程 描述 sp_columns 返回指定表或视图的列的详细信息。 sp_databases 返回当前服务器上的所有数据库的基本信息。 sp_fkeys 若参数为带有主键的表,则返回包含指向该表的外键的所有表;若参数为带有外键的表名,则返回所有同过主键/外键关系与该外键相关联的所有表。 sp_pkeys 返回指定表的主键信息。 sp_server_info 返回当前服务器的各种特性及其对应取值。 sp_sproc_columns 返回指定存储过程的的输入

SQL Server 2017错误日志中出现“Parallel redo is shutdown for database &apos;xxx&apos; with worker pool size [2]."浅析

こ雲淡風輕ζ 提交于 2020-08-09 12:22:07
在SQL Server 2017的错误日志中出现"Parallel redo is started for database 'xxx' with worker pool size [2]"和 “ Parallel redo is shutdown for database 'xxx' with worker pool size [2]. ” 这种信息,这意味着什么呢? 如下所示 Date 2020/5/16 11:07:38 Log SQL Server (Current - 2020/5/16 11:08:00) Source spid33s Message Parallel redo is started for database 'YourSQLDba' with worker pool size [2]. Date 2020/5/16 11:07:38 Log SQL Server (Current - 2020/5/16 11:08:00) Source spid33s Message Parallel redo is shutdown for database 'YourSQLDba' with worker pool size [2]. 其实这个要涉及 parallel redo 这个概念,官方文档有详细介绍,摘抄部分如下【详情请见参考资料】: When