当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server数据库技术(17)

MSSQL
利用 Case 敘述做 SQL 的動態排列
SQL Server 2000 与 SQL Server 7.0 版兼容性问题
数据变换和转换注意事项(SQL)
浅谈优化SQLServer数据库服务器内存配置的策略
SQL2000管理SQL7服务器出现TIMEOUT问题的解决
Web环境下MS SQL Server中数据的磁带备份与恢复
SQL Server 7.0与以前的版本相比,安全模式中最重要的
如何用sql语句修改数据表中字段,实现identity(100,1)
sqlserver7.0中如何在死锁产生时自动将其杀死
Sql server使用内存限定在多少最为合适
使用MS SQL7的LINKED SERVER(一)
使用MS SQL7的LINKED SERVER(二)
使用MS SQL7的LINKED SERVER(三)
使用MS SQL7的LINKED SERVER(四)
SQL--JOIN之完全用法
总结 SQL Server 中死锁产生的原因及解决办法
数据库正规化和设计技巧
IDENTITY列的一个有用操作
聚合函数
当SQL Server数据库崩溃时如何恢复?

MSSQL 中的 SQL Server数据库技术(17)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 61 ::
收藏到网摘: n/a

4.7.1 BACKUP
BACKUP 命令用于将数据库内容或其事务处理日志备份到存储介质上(软盘、硬盘、磁带)。等SQL Server 7.0 以前的版本用的是DUMP 命令来执行此功能,从SQL Server 2000起,不再使用DUMP 命令。关于BACKUP 命令的详情请参见“数据备份与恢复”章节。
    4.7.2 CHECKPOINT
语法如下:
CHECKPOINT
CHECKPOINT 命令用于将当前工作的数据库中被更改过的数据页data page 或日志页(log page)从数据缓冲器(data buffer cache)中强制写入硬盘。
    4.7.3 DBCC
DBCC Database Base Consistency Checker,数据库一致性检查程序)命令用于验证数据库完整性、查找错误、分析系统使用情况等。
DBCC 命令后必须加上子命令,系统才知道要做什么。如DBCC CHECKALLOC 命令检查目前数据库内所有数据页的分配和使用情况。
关于DBCC 命令的详情,请参见附录。

    4.7.4 DECLARE
语法如下:
DECLARE {{ @local_variable data_type }
| { @cursor_variable_name CURSOR }
| { table_type_definition }
} [,...n]]
DECLARE 命令用于声明一个或多个局部变量、游标变量或表变量。在用DECLARE命令声明之后,所有的变量都被赋予初值NULL。需要用SELECT 或SET命令来给变量赋值。变量类型可为系统定义的或用户定义的类型,但不能为TEXT、NTEXT、IMAGE类型。CURSOR 指名变量是局部的游标变量。
例4-16
declare @x float @y datetime
select @x = pi @y = getdate
print @x
print @y
运行结果如下:
3.14159
Jun 17 2000 4:32PM
注意:如果变量为字符型,那么在data_type表达中应指明
其最大长度,否则系统认为其长度为1。
例4-17
declare @x char @y char 10
select @x = '123' @y = 'data_type'
print @x
print @y
运行结果如下
1
data_type

    4.7.5 EXECUTE
EXECUTE 命令用来执行存储过程,其具体用法请参见“存储过程”章节。 
     4.7.6 KILL
KILL 命令用于终止某一过程的执行,其具体用法请参见“存储过程”章节。
    4.7.7 PRINT
语法如下:
PRINT 'any ASCII text' | @local_variable | @@FUNCTION | string_expression
PRINT 命令向客户端返回一个用户自定义的信息,即显示一个字符串(最长为255个字符)、局部变量或全局变量。如果变量值不是字符串的话,必须先用数据类型转换函数CONVERT(),将其转换为字符串。其中,string_expression 是可返回一个字符串的表达式。表达式的长度可以超过8000 个字符,但超过8000 的字符将不会显示。
例4-18:
declare @x char 10 @y char 10
select @x = 'SQL' @y = 'Server'
print '科技'
print @x + @y

运行结果如下:
科技
SQL Server

   4.7.8 RAISERROR
RAISERROR 命令用于在SQL Server 系统返回错误信息时,同时返回用户指定的信息。其具体用法请参见“存储过程”章节。
    4.7.9 READTEXT
READTEXT 命令语法如下
READTEXT {table.column text_pointer offset size} [HOLDLOCK]
READTEXT 命令用于从数据类型为TEXT、NTEXT 或IMAGE 的列中读取数据。命令从偏移位置offset+1 个字符起读取size 个字符,如果size 为0, 则会读取4KB 的数据。其中text_pointer 是指向存储文本的第一个数据库页的指针,它可以用TEXTPTR()函数来获取。关于TEXTPTR ()函数的使用请参见“4.8.7 TEXT 和IMAGE 函数”。HOLDLOCK 选项用于锁定所读取的数据直到传输结束,这段时间内,其它用户只能读取数据,不能更改数据。
例4-19:
use pangu
declare @t_pointer varbinary (16)
select @t_pointer = textptr (d_intro)
from department
where d_name = '技术部'
readtext department.d_intr