SQL Server 7.0 入门(四)
文本和图像数据类型列可以象其它列一样包含在SELECT语句的Select_list中。通过SELECT语句检索的最大文本大小由TEXTSIZE设置来控制。默认的TEXTSIZE的值是4096字节,使用SET TEXTSIZE语句可重新设置。当前的TEXTSIZE设置的值存放在全局变量@@TEXTSIZE中。
另一种检索文本和图像数据的方法是通过TEXTPTR和READTEXT函数。TEXTPTR函数把列名字作为输入参数并以二进制格式返回文本指针。
这个指针和被称为偏移量的读开始指针以及要读的字节数量一起传给READTEXT函数,以检索文本和图像数据。
修改数据
TSQL也提供从数据库插入、修改、删除的命令。
插入
INSERT命令用来在表中插入数据,语法如下:
INSERT [INTO] <table_name> [(column_list)] VALUES (value_list)
Value_list是和在Column_list中列相应的值。这些值可以是常量、TSQL变量或SQL Server内部函数。值的顺序应和column_list中列的顺序相对应。如果没有定义column_list,则值的顺序应和表中列的顺序对应。
INSERT的Values_list也可通过SELECT语句或一个存储过程来提供。语法如下:
INSERT [INTO] <table_name> [(column_list)]
SELECT <select_list> FROM <table_name>
INSERT [INTO] <table_name> [(column_list)]
EXECUTE <procedure_name>
这里的SELECT语句可包含多种连接。如果使用存储过程,则存储过程应返回能作为column_list的结果。
时间戳(timestamp,又称时标)值不应被提供。同时,如果列的IDENTITY属性被定义,则这一列的值也不能提供。这些值都由系统产生。如果列有默认值,则它们的值不被提供,而使用默认值。
修改
UPDATE语句用来修改行,语法如下:
UPDATE <table_name> SET <column_name> = <value> [,<column_name> = <value>_n]
WHERE <search_condition>]
Serach_condition是要修改的行应满足的条件。没有WHERE子句的UPDATE语句将修改表中的所有行。在UPDATE语句中也可使用连接。
删除
DELETE语句用来从表中删除行。语法如下:
DELETE [FROM] <table_name>
[WHERE <search_condition>] Serach_condition是删除行要满足的条件。一个无条件DELETE语句将删除表中的所有行。在DELETE语句中也可使用连接。