数据库
文章平均质量分 76
manonga
这个作者很懒,什么都没留下…
展开
-
常用sql查询语句
一、简单查询语句1. 查看表结构SQL>DESC table;2. 查询所有列SQL>SELECT * FROM table;3. 查询指定列SQL>SELECT empmo, ename, mgr FROM table;SQL>SELECT DISTINCT mgr FROM table; 去重4. 查询指定行SQL>SELECT * FROM table W原创 2017-02-23 10:01:36 · 331 阅读 · 0 评论 -
SQL Server 锁
锁是一种防止在某对象执行动作的一个进程与已在该对象上执行的其他进行相冲突的机制。也就是说,如果有其他人在操作某个对象,那么你旧不能在该对象上进行操作。你能否执行操作取决于其他用户正在进行的操作。通过锁可以防止的问题 锁可以解决以下4种主要问题:脏读非重复性读取幻读丢失更新 1、脏读 如果一个事务读取的记录是另一个未完成事务的一部分,那么这时就发生了脏读。如果第一个事务转载 2017-05-12 16:45:38 · 383 阅读 · 0 评论 -
SQLServer XML类型
SQL Server从2005起开始支持xml类型,这个数据类型对于后期的改变非常有用。一对多的关系在后期变成了多对多的关系,XML类型就是一个不错的选择。 1、创建测试数据 创建表 --创建表,包含Xml类型列 CREATE TABLE Person ( Id int, Info xml ) 插入测试数据 --插入3条转载 2017-05-24 17:00:12 · 637 阅读 · 1 评论 -
SQL Server逻辑读、预读和物理读
SQL Server数据存储的形式 预读:用估计信息,去硬盘读取数据到缓存。预读100次,也就是估计将要从硬盘中读取了100页数据到缓存。 物理读:查询计划生成好以后,如果缓存缺少所需要的数据,让缓存再次去读硬盘。物理读10页,从硬盘中读取10页数据到缓存。 逻辑读:从缓存中取出所有数据。逻辑读100次,也就是从缓存里取到100页数据。 SQL Server存储的最小单位是页,转载 2017-04-24 16:59:45 · 1610 阅读 · 0 评论 -
SQL Server 文件和文件组
文件和文件组简介 在SQL Server中,数据库在硬盘上的存储方式和普通文件在Windows中的存储方式没有什么不同,仅仅是几个文件而已。SQL Server通过管理逻辑上的文件组的方式来管理文件。 SQL Server通过文件组对数据文件进行管理。我们看到的逻辑数据库由一个或者多个文件组构成。 结构图如下: 文件组管理着磁盘上的文件,文件中存放的就是SQ转载 2017-04-26 09:41:00 · 1597 阅读 · 0 评论 -
SQL Server 分区表
分区表简介 分区表是SQL Server2005新引入的概念,这个特性在逻辑上将一个表在物理上分为多个部分。(即它允许将一个表存储在不同的物理磁盘里)。在SQL Server2005之前,分区表实际上是分布式视图,也就是多个表做union操作。 分区表在逻辑上是一个表,而物理上是多个表。在用户的角度,分区表和普通表是一样的,用户角度感觉不出来。 而在SQL Ser转载 2017-04-26 10:28:28 · 399 阅读 · 0 评论 -
SQL、T-SQL与PL-SQL的区别
SQL是Structrued Query Language的缩写,即结构化查询语言。它是负责与ANSI(美国国家标准学会)维护的数据库交互的标准。作为关系数据库的标准语言,它已被众多商用DBMS产品所采用,使得它已成为关系数据库领域中一个主流语言,不仅包含数据查询功能,还包括插入、删除、更新和数据定义功能.T-SQL是SQL语言的一种版本,且只能在SQL SERVER上使用。它是A转载 2017-04-26 13:31:53 · 3940 阅读 · 0 评论 -
SQL 语句转换格式函数Cast、Convert
CAST和CONVERT都经常被使用。特别提取出来作为一篇文章,方便查找。 CAST、CONVERT都可以执行数据类型转换。在大部分情况下,两者执行同样的功能,不同的是CONVERT还提供一些特别的日期格式转换,而CAST没有这个功能。 既然CONVERT包括了CAST的所有功能,而且CONVERT还能进行日期转换,那么为什么需要使用CAST呢?实际上,这是为了ANSI/ISO兼容。C转载 2017-04-26 13:54:54 · 324 阅读 · 0 评论 -
SQL Server系统存储过程
1、sp_help 查询表的信息 执行存储过程: sp_help Person 显示结果如下: 妈了个B,有了这张图,你还不懂怎么看一张表有那些信息,那哥以后都不学SQL Server了。另外,还有约束,存储过程,自定义函数等等信息,以后补充。 2、sp_helpdb 查看数据库信息 执行存储过程: sp_helpdb TestData转载 2017-04-26 15:10:06 · 837 阅读 · 0 评论 -
T-SQL 批处理
批处理简介 批处理是作为一个逻辑单元的T-SQL语句。如果一条语句不能通过语法分析,那么不会运行任何语句。如果一条语句在运行时失败,那么产生错误的语句之前的语句都已经运行了。 为了将一个脚本分为多个批处理,可使用GO语句。 GO语句的特点: GO语句必须自成一行,只有注释可以再同一行上。 它使得自脚本的开始部分或者最近一个GO语句以后的所有语句编译成一个执行计划并转载 2017-04-27 10:49:38 · 930 阅读 · 0 评论 -
SQL Server 触发器
触发器可以做很多事情,但也会带来很多问题。使用它的技巧在于在适当的时候使用,而不要在不适当的时候使用它们。 触发器的一些常见用途如下:弹性参照完整性:实现很多DRI不能实现的操作(例如,跨数据库或服务器的参照完整性以及很多复杂的关系类型)。创建神级跟踪:这意味写出的记录不仅跟踪大多数当前的数据,还包括对每个记录进行实际修改的历史数据。随着SQL Server2008中的更改数据跟踪功转载 2017-05-23 16:30:41 · 636 阅读 · 0 评论 -
SQL Server 事务语法
事务全部是关于原子性的。原子性的概念是指可以把一些事情当做一个单元来看待。从数据库的角度看,它是指应全部执行或全部都不执行的一条或多条语句的最小组合。为了理解事务的概念,需要能够定义非常明确的边界。事务要有非常明确的开始和结束点。SQL Server中的每一条SELECT、INSERT、UPDATE和DELETE语句都是隐式事务的一部分。即使只发出一条语句,也会把这条语句当做一个事务-要么执行转载 2017-05-12 11:24:06 · 449 阅读 · 0 评论 -
SQL语句中的正则表达示
正则表达式作用是匹配方本,将一个模式(正则表达式)与一个文本串进行比较。MySQL用WHERE子句对正则表达式提供了初步的支持,允许你指定用正则表达式过滤SELECT检索出的数据。MySQL仅支持多数正则表达式实现的一个很小的子集。----------------------9.2.1 基本字符匹配REGEXP后所跟的东西作为正则表达式处理。转载 2017-02-23 13:05:39 · 535 阅读 · 0 评论 -
SQL Server 排序函数 ROW_NUMBER和RANK 用法总结
下面的例子和SQL语句均在SQL Server 2008环境下运行通过,使用SQL Server自带的AdventureWorks数据库。转载请注明此文原创自CSDN TJVictor的专栏:http://blog.csdn.net/tjvictor/archive/2009/07/08/4331039.aspx 1.ROW_NUMBER()基本用法:SELECT Sal转载 2017-02-23 13:22:07 · 610 阅读 · 0 评论 -
谈谈数据库的ACID
一.事务 定义:所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。 准备工作:为了说明事务的ACID原理,我们使用银行账户及资金管理的案例进行分析。[sql] view plain copy print? // 创建数据库 create table account(转载 2017-02-28 17:15:20 · 238 阅读 · 1 评论 -
SQL Server,MySQL,Oracle三者的区别
OracleOracle 能在所有主流平台上运行(包括Windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持,Oracle并行服务器通过使一组结点共享同一簇中的工作来扩展Windows NT的能力,提供高可用性和高伸缩性的簇的解决方案。如果Windows NT不能满足需要,用户可以把数据库移到UNIX中。Oracle的并行服务器对各种UNI转载 2017-03-29 13:39:10 · 980 阅读 · 0 评论 -
SQLServer - 约束
一、约束的分类 在SQLServer中,有3种不同类型的约束。 1、实体约束 实体约束是关于行的,比如某一行出现的值就不允许出现在其他行,例如主键。 2、域约束 域约束是关于列的,对于所有行,某一列有那些约束,例如CHECK约束。 3、参照完整性约束 如果某列的值必须与其他列的值匹配,那就意味着需要一个参照完整性约束,例如外键。二、约束命名转载 2017-03-30 14:11:51 · 863 阅读 · 0 评论 -
SQL Server存储机制
1、区段 区段(extent)是用来为表和索引分配空间的基本存储单元。它由8个连续的64KB数据页组成。 基于区段(而不是实际使用空间)分配空间的概念的要点: 一旦区段已满,那么下一记录将要占据的空间不是记录的大小,而是整个新区段的大小。一次分配一个区段而不是分配一个记录。 通过预分配空间,SQL Server节省为每个记录分配新空间的时间。 向当前分配的区段添加转载 2017-03-30 14:14:09 · 446 阅读 · 0 评论 -
数据库设计的三大范式
关系数据库中的关系必须满足一定的要求。满足不同程度要求的为不同范式。数据库的设计范式是数据库设计所需要满足的规范。只有理解数据库的设计范式,才能设计出高效率、优雅的数据库,否则可能会设计出错误的数据库.目前,主要有六种范式:第一范式、第二范式、第三范式、BC范式、第四范式和第五范式。满足最低要求的叫第一范式,简称1NF。在第一范式基础上进一步满足一些要求的为第二范式,简称2NF。其余依此类推。转载 2017-03-16 15:30:25 · 338 阅读 · 0 评论 -
SQL Server 视图
视图实际上就是一个存储查询,重点是是可以混合和匹配来自基本表(或者其他视图)的数据,从而创建在很多方面像另一个基表那样起作用的对象。可以创建一个简单的查询,仅仅从一个表中选择几列,而忽略其他列;或者也可以创建一个复杂的查询,连接几个表,使的这些表看起来像一个表。一、简单的视图 视图的语法如下:CREATE VIEW view name>ASSELECT statement>转载 2017-04-17 15:49:16 · 479 阅读 · 0 评论 -
SQL Server 表变量和临时表的区别
一、表变量 表变量在SQL Server 2000中首次被引入。表变量的具体定义包括列定义,列名,数据类型和约束。而在表变量中可以使用的约束包括主键约束,唯一约束,NULL约束和CHECK约束(外键约束不能在表变量中使用)。定义表变量的语句是和正常使用Create Table定义表语句的子集。只是表变量通过DECLARE @local_variable语句进行定义。 表变量的特征:转载 2017-05-09 17:01:37 · 374 阅读 · 0 评论