摘要:一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 't...
        阅读全文
        随笔分类 - SQL Server
摘要:第一步:创建 查询某个值存在某个表里的哪个字段的值里面 的存储过程create proc spFind_Column_In_DB ( @type int,--类型:1为文字类型、2为数值类型 @str nvarchar(100)--需要搜索的名字 ) as --创建临时表存放结...
        阅读全文
        
摘要:---恢复内容开始--- 对于一个优秀的应用程序来说,具有数据恢复功能尤为重要。因为数据恢复功能可以在数据找到破坏时,将数据恢复到系统中,保证系统重新正常运转,从而避免因数据找到异常丢失所带来的损失。本实例将演示怎样在C#中还原数据库。 还原数据库是使用数据库的备份文件对数据库进行还原操作。由于...
        阅读全文
        
摘要:备份数据库是指对数据库或事务日志进行复制,当系统、磁盘或数据库文件损坏时,可以使用备份文件进行恢复,防止数据丢失。 SQL Server数据库备份支持4种类型,分别应用于不同的场合,下面简要介绍。 (1)完全备份 完全备份,即完整数据库备份,可以备份整个数据库,包含用户表、系统表、索引、视图和...
        阅读全文
        
摘要:1 USE [test] 2 GO 3 /****** Object: StoredProcedure [dbo].[PageIndex] Script Date: 12/07/2011 10:26:36 ******/ 4 SET ANSI_NULLS ON 5 GO 6 SET QUOT...
        阅读全文
        
摘要:SELECT COUNT(*) AS AllCount,t.AssignedCount,(COUNT(*)-t.AssignedCount) AS UnassignedCountFROM 药品表jOIN( SELECT COUNT(*) AS AssignedCount	FROM 质量分析分配表)...
        阅读全文
        
摘要:SQL Server中,写存储过程,时常会碰到这样一个需求:从某个表中取某一列,然后需要将这一列数据以某种形式拼成一个字符串,以供后面使用,下面这种方法能够实现此需求。1 --取说明书模块枚举,结果格式为:'dmtContraindication|dmtAttentionDesc|'2 declar...
        阅读全文
        
摘要:SQL Server中的窗口函数http://www.cnblogs.com/CareySon/p/3411176.html
        阅读全文
        
摘要:partitionby关键字是分析性函数的一部分,它和聚合函数不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反映统计值的记录,partitionby用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组create database StudentDBgouse StudentDBgocreate table Student --学生成绩表(id int, --主键Grade int, --班级Score int --分数)goinsert Student select 1,1,88union all select 2,1,66union all select 3,1
        阅读全文
        
摘要:(1)SELECT表名=case when a.colorder=1 then d.name else '' end,表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,字段序号=a.colorder,字段名=a.name,标...
        阅读全文
        
摘要:left join 和 left outer join 的区别通俗的讲: AleftjoinB的连接的记录数与A表的记录数同 ArightjoinB的连接的记录数与B表的记录数同 AleftjoinB等价BrightjoinAtableA: Field_K,Field_A 1a 3b 4ctableB: Field_K,Field_B 1x 2y 4zselecta.Field_K,a.Field_A,b.Field_K,b.Field_B fromaleftjoinbona.Field_K=b.Field_K Field_KField_AField_KField_B -------...
        阅读全文
        
摘要:对于T-SQL编程,用得最广泛的,莫过于查询(Querying)。要想写出高质量、高性能的查询语句,必须深入地了解逻辑查询处理。一、逻辑查询处理的各个阶段(5)SELECT DISTINCT TOP() (1)FROM JOIN ON (2)WHERE (3)GROUP BY (4)HAVING (6)ORDER BY 上边语句是一个普通格式的查询语句,基本包含了所有的查询条件和关键字。你可能会发现前边的序号并不是按顺序来的,被你说对了,这是SQL与其他编程语言不同的最明显特征,就是它的执行顺序并不是按照编写顺序来的。上边的序号,就是查询语句在执行过程中的逻辑处理顺序。下面简单介绍一下各...
        阅读全文
        
摘要:Tsql查询执行顺序(二)T-SQL查询处理这种逻辑处理顺序,是理论上的处理过程,实际情况还会根据查询优化器选择最优的执行计划。还是从FROM阶段讲开。(1)FROM阶段 这个阶段是查询逻辑处理的第一步。想到这里,想起了LINQ表达式不就是从FROM开始的嘛,看来还是挺有道理的。FROM阶段负责表示表或要查询的表。如果指定了表运算符,还需 要按从左到右的顺序,对运算符进行逐个处理。表运算符有4类,JOIN,APPLY,PIVOT,UNPIVOT。每个表运算符都有自己的处理规则。这里挑最常见的JOIN来说。对于联接(join),一般有以下几个个步骤:a.求笛卡尔积,对两张表进行cross joi
        阅读全文
        
摘要:ibatis中使用select top #num# * from tableName出现错误。由于初次用ibatis还不知道在它里边拼写SQL语句的一些规则,导致一些自认为很平常的SQL语句,在它这里翻了船。select top #number#这种写法是不正确的,原因待查。正确的书写方式是 select top $number$ 。下面这段话是在网络里找到的它也没给出具体的解释,只是说这是什么SQL的动态写法,不明所以。在iBATIS中,对于top参数,只能用动态SQL方式。如 #与$的区别昨天一个项目中在写ibatis中的sql语句时,order by #field#, 运行时总是报错,后
        阅读全文
        
摘要:由于原来系统的分页方式,采用的是假分页,效率很低,且经常数据库超时报黄页。所以,最近都在寻找合适的分页优化方法。原sql模型:WITHRecordsAS(SELECTROW_NUMBER()OVER(ORDERBY XXX DESC)ASRecordNumber, RecordCount=COUNT(1)OVER(), …… …… …… FROM table1 WHERE 条件)SELECT * FROMRecordsWITH(NOLOCK)WHERERecordNumberBETWEEN1AND15目前找到的比较有效地优化方式,有两种,一...
        阅读全文
        
摘要:看懂SqlServer查询计划转载地址:http://www.cnblogs.com/fish-li/archive/2011/06/06/2073626.html阅读目录开始Sql Server 查找记录的方法Sql Server Join 方式更具体执行过程索引统计信息:查询计划的选择依据优化视图查询推荐阅读-MSDN文章对于SqlServer的优化来说,可能优化查询是很常见的事情。关于数据库的优化,本身也是一个涉及面比较的广的话题,本文只谈优化查询时如何看懂SqlServer查询计划。由于我对SqlServer的认识有限,如有错误,也恳请您在发现后及时批评指正。首先,打开【SQL Ser
        阅读全文
        
摘要:SQL Server 查询处理中的各个阶段(SQL执行顺序)SQL 不同于与其他编程语言的最明显特征是处理代码的顺序。在大数编程语言中,代码按编码顺序被处理,但是在SQL语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后被处理。 每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只是最后一步生成的表才会返回 给调用者。如果没有在查询中指定某一子句,将跳过相应的步骤。下面是对应用于SQL server 2000和SQL Server 2005的各个逻辑步骤的简单描述。Code highlig
        阅读全文
        
摘要:MS SQL Server查询优化方法 查询速度慢的原因很多,常见如下几种 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源。 9、返回了不必要的行和列 10、查询语句不好,没有优化 可以通过如下方法来优化查询 1、把数据、日志、索引放到不同的I/O设备上...
        阅读全文
        
摘要:文章来源:http://www.cnblogs.com/herbert/archive/2010/07/02/1770062.htmlSQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)SQL系统的一些数据库数据库描述master对用户数据库和SQL Server的操作进行总体的控制model提供创建新用户数据库所需的模板和原型tempdb提供临时表和其他临时工作存储量所需的存储区msdb提供调度信
        阅读全文
        
摘要:功能:在删除主表时,自动删除副表(外键约束)相应内容删除包含主键值的行的操作,该值由其它表的现有行中的外键列引用。在级联删除中,还删除其外键值引用删除的主键值的所有行。如:create database tempgouse tempgocreate table UserInfo(UserId int identity(1,1) primary key ,UserName varchar(20), --用户名password varchar(20) not null --密码)create table UserDetails(id int identity(1,1) primary key,na
        阅读全文
        
 
                     
                    
                 
                    
                 

 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号