摘要: begin try--SQL end trybegin catch --sql (处理出错动作)end catch我们将可能会出错的sql 写在begin try...end try 之间,若出错,刚程序就跳到紧接着的begin try...end try 的beign catch...end catch中,执行beign catch...end catch错误处理SQL。try..catch 是可以嵌套的。在begin catch ...end catch中我们可以利用系统提供的下面四个函数得到出错信息:error_number 返回错误代码error_serverity 返回错误的严重级别 阅读全文
posted @ 2011-09-26 14:50 _cc 阅读(8027) 评论(0) 推荐(1) 编辑
摘要: 大家在写查询时,为了性能,往往会在表后面加一个nolock,或者是with(nolock),其目的就是查询是不锁定表,从而达到提高查询速度的目的。什么是并发访问:同一时间有多个用户访问同一资源,并发用户中如果有用户对资源做了修改,此时就会对其它用户产生某些不利的影响,例如: 1:脏读,一个用户对一个资源做了修改,此时另外一个用户正好读取了这条被修改的记录,然后,第一个用户放弃修改,数据回到修改之前,这两个不同的结果就是脏读。 2:不可重复读,一个用户的一个操作是一个事务,这个事务分两次读取同一条记录,如果第一次读取后,有另外用户修改了这个数据,然后第二次读取的数据正好是其它用户修改的数据... 阅读全文
posted @ 2011-09-23 10:10 _cc 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 索引的填充因子,表示索引的填满程度。对于不经常添加记录的表,意义不大。如果表中经常填充大量数据,这个值可以略小一些,索引不至于一下子填满。因为如果索引填满的话,会导致索引页产生碎片,造成数据访问效率降低。如果该值设置为100,只要填入新数据,就会造成索引分页。FILLFACTOR 中间级页 叶级页 0 一个可用项 100% 填满 1% -99 一个可用项 <= FILLFACTOR% 填满 100% 一个可用项 100% 填满 更多参见:http://topic.csdn.net/u/20070622/11/5b7992f2-594e-47e2-93c1-dd7... 阅读全文
posted @ 2011-09-22 15:48 _cc 阅读(759) 评论(0) 推荐(0) 编辑
摘要: 当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数。如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著提高性能。当没有必要返回给客户端“n 行受到影响”消息时,应该在存储过程的开始设置 SET NOCOUNT ON,在存储过程结束时设置SET NOCOUNT OFF. 阅读全文
posted @ 2011-09-22 14:31 _cc 阅读(230) 评论(1) 推荐(1) 编辑
摘要: SQL SERVER2000与SQL SERVER2005一直都听说有所不同,但是一直没有用过,上次把SQL SERVER2000制裁了,今天装QL SERVER2005时出现上述错误,GOOGLE了一下在XP系统下面的修改方面法。出现如下所示错误图示:在 “开始” --> “运行”中输入 regedit,开启注册表编辑器。定位到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib处,在右边的树形目录下可以看到Perflib目录下有004和009两个子目录。在Sql Server 2005 的安装 阅读全文
posted @ 2011-09-12 16:25 _cc 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 标准SQL语句总结,标准SQL语言基本上适用于下面所列出的数据库软件-----------------------------------------------------------------------------数据库软件清单A商业数据库软件如下1.微软的MS SQL Server和Access2.IBM的DB2,informax3.Sybase的大型数据库ASE,中小型数据库ASA4.甲骨文公司的Oracle8.0,oracle9i系列5.Borland公司的InterBaseB多种开源免费数据库Mysql,PostgreSQL,SQLite、SimpleSQL、Berkely D 阅读全文
posted @ 2011-09-08 15:51 _cc 阅读(1453) 评论(0) 推荐(0) 编辑
摘要: USE 学生数据库;SELECT * FROM 学生表;SELECT * FROM 课程表;SELECT * FROM 学生选课表;---------------游标----------------------/**用SELECT 语句的查询 ,结果是一个数据集,若想对某一行数据进行处理,例如想删除某一行数据,修改某一行数据,这时就要使用游标。游标是对数据表按特定要求进行的一种操作**/--从学生选课表中提取两行数据DECLARE MYCURSOR CURSOR FORSELECT * FROM 学生选课表 --创建游标OPEN MYCURSOR --打开游标FETCH MY... 阅读全文
posted @ 2011-09-08 15:41 _cc 阅读(1505) 评论(0) 推荐(1) 编辑
摘要: 创建触发器的语法如下所示:CREATE TRIGGER <trigger name> ON [<schema name>.]<table or view name> [WITH ENCRYPTION | EXECUTE AS <CALLER | SELF | <user> >] { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] } [WITH APPEND] [NOT FOR REPLICATION]AS < <sql s 阅读全文
posted @ 2011-09-08 15:33 _cc 阅读(495) 评论(0) 推荐(0) 编辑
摘要: use 学生数据库;--create view ...as 语句创建视图--在学生数据库,创建查询女学生资料的视图,视图名字为学生_简单资料CREATE VIEW 学生_简单资料1AS SELECT SNO,SN,SEX FROM 学生表 WHERE 学生表.SEX='女'DROP VIEW 学生_简单资料1;--在学生数据库,创建查询学号,学生名,课程名,分数的视图。视图名字为--学生分数_视图CREATE VIEW 学生分数_视图 AS SELECT 学生表.SNO 学号,SN 学生名,CN 课程名,GRADE 分数 FROM 学生表,课程表,学生选课表WHERE 学生表. 阅读全文
posted @ 2011-09-06 22:05 _cc 阅读(1332) 评论(0) 推荐(0) 编辑
摘要: use 学生数据库;drop database 学生数据库;create database 学生数据库ON(NAME = 学生数据库_数据文件,FILENAME='E:\sql sever 2000\学生数据库_数据文件.MDF',SIZE=10,MAXSIZE =50,FILEGROWTH=5)LOG ON (NAME = 学生数据库_日志文件,FILENAME='E:\sql sever 2000\学生数据库_日志文件.LDF',SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB)GOCREATE TABLE 学生表(SNO CHAR( 阅读全文
posted @ 2011-08-31 22:20 _cc 阅读(6023) 评论(0) 推荐(1) 编辑