易截截图软件、单文件、免安装、纯绿色、仅160KB

转载的一篇sqlserver文章

公司组织SQL水平考试,看了写教材,写了点总结发上来跟大家分享。
我公司使用的是Sybase ASE12.5,所以下面的一些特性是针对Sybase ASE的。
一:SQL Bisic
1:SQL(Structured Quary Language)特性:
a:标准化
b:非过程化的
c:可优化的
d:面向集合操作的
2:ASE中的数据类型
a:Numberic
b:Character
c:Date/Time
d:Lobs
3: convert(varchar, textColumn),如果不指定varchar(n)n那么默认是30
4:where 在sql中的作用
a:过滤数据
b:做表连接(sql92以前)
c:选择索引
5:whare 和 having的区别
where语句把过滤好的数据插入到work table中
having语句从work table中对数据进行在过滤以得到最后的结果。
6:一个select语句的执行顺序
a:from clause
b:where clause
c:group by clause
d:select clause
e:having clause
f:order by clause
7:Union VS Union All
a:Union 会把两个结果集排序,并且除去重复的元素(效率差,轻易不要用)
b:Union All仅仅是把两个结果集合并,没有排序,也不去除重复元素(效率好)
二:索引和查询参数
1:ASE中有三种access数据方式
a:clustered Index
b:nonclustered Index
c:table scan
2:Covered Query
一个Covered Query 仅仅从索引中得到数据,不用去扫描数据库表,这是最快的数据查询方式。
限制1:只能在selece中生效
限制2:所有被引用的列必须在同一个nonclustered index中
3:functional index
在ASE15.0以后才被支持,也就是说在ASE15.0以前的版本,下列语句是可定不会用上索引的
sql 代码
 
select
 column1  
from
 table1  
where
 
upper
(column2) = 'IVANL'  
4:如何查看执行计划
sql 代码
 
set
 showplan 
on
  
go  
your sql  
go  
set
 showplan 
off
  
go  
5: 如何查看IO
sql 代码
 
set
 
statistics
 io 
on
  
set
 
statistics
 
time
 
on
  
go  
you sql  
go  
set
 
statistics
 io 
off
  
set
 
statistics
 
time
 
off
  
go &nbs


相关文档:

采用vs2005对sqlserver 2005 SP进行单步调试

  ms sqlserver 2005中的存储过程无法在Management Studio中进行调试,
但可以通过Visual Studio 2005来对之进行调试。(可设置断点,单步调试等)
    采用Visual Studio调试存储过程的方法如下:
 1.启动Visual Studio(可不创建项目),打开Server Explorer(菜单-view-Server Explorer)
......

SqlServer 表 解锁

--spid:死锁的进程,tableName :死锁的表
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName from sys.dm_tran_locks
where resource_type='OBJECT'
--spid:要结束的进程id
kill spid ......

清除SQLServer数据库日志(SqlServer2005)

在主数据库文件进行大量的删除(新增,修改都会有日志),日志文件有1.5G。昨天还原数据库时初始值也才1MB。必须清除掉,不然太占空间了。上网找了个清除日志的方法。顺利将日志文件log.ldf从1.5G变为了1M。 我执行如下:
 1.清空日志
 DUMP TRANSACTION 库名 WITH NO_LOG
2.截断事务日志:
 BACKUP LOG ......

sqlserver 修改排序规则

前阵遇到 本地sqlserver2005跨库查询
结果首先报错的是 无法 处理不同的排序规则
在修改排序规则的过程中,又出现了,“无法用排他锁锁定该数据库,以执行该操作。”这样的错误。
经查资料发现,修改数据库为单用户访问,可以锁定数据库。
alter database yourdatabase set single_user with rollback  ......

临时表vs.表变量以及它们对SQLServer性能的影响

在临时表
create table #T (…)
和表变量
declare @T table (…)
之间主要有3个理论上的不同。
第一个不同使事务日志不会记录表变量。因此,它们脱离了事务机制的范围,从下面的例子可显而易见:
create table #T (s varchar(128))
declare @T table (s varchar(128))
insert into #T select 'old va ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号