SQL Server UPDATE语句用于更新数据,下面就为您详细介绍SQL Server
UPDATE语句语法方面的知识,希望可以让您对SQL Server
UPDATE语句有更多的了解。

管理文本和图像数据 
    文本和图像数据类型列可以象其它列一样包含在SELECT语句的Select_list中。通过SELECT语句检索的最大文本大小由TEXTSIZE设置来控制。默认的TEXTSIZE的值是4096字节,使用SET TEXTSIZE语句可重新设置。当前的TEXTSIZE设置的值存放在全局变量@@TEXTSIZE中。 

现实应用中数据库中的数据改动是免不了的。通常,几乎所有的用户数据库中的大部分数据都要进行某种程度的修改。在SQL
Server数据库中要想修改数据库记录,就需要用UPDATE语句,UPDATE语句就是为了改变数据库中的现存数据而存在的。这条语句虽然有一些复杂的选项,但确实是最容易学习的语句之一。这是因为在大多数情况下,这条语句的高级部分很少使用。在用户看来,UPDATE语句只是用来改变指定行中的数据。但实际的内部情况是,SQL
Server从表中删除旧的数据行并插入新行。

    另一种检索文本和图像数据的方法是通过TEXTPTR和READTEXT函数。TEXTPTR函数把列名字作为输入参数并以二进制格式返回文本指针。 

SQL Server UPDATE语句的语法如下:

    这个指针和被称为偏移量的读开始指针以及要读的字节数量一起传给READTEXT函数,以检索文本和图像数据。 

update table_name set column_name = value where search_condition

修改数据 
    TSQL也提供从数据库插入、修改、删除的命令。 

下面是语法选项简介:

插入 
    INSERT命令用来在表中插入数据,语法如下: 
    INSERT [INTO] <table_name> [(column_list)] VALUES (value_list) 
    Value_list是和在Column_list中列相应的值。这些值可以是常量、TSQL变量或SQL Server内部函数。值的顺序应和column_list中列的顺序相对应。如果没有定义column_list,则值的顺序应和表中列的顺序对应。 

table_name表的名称。该表包含了要修改值的列column_name要修改数据的列的名称value要输入到列中的新值search_condition这是UPDATE语句中最重要的部分。通过指定一个好的搜索条件,你能够限定表内被修改的行数。如果你不指定搜索条件,SQLServer会用新值修改表内的所有行

    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的结果。 

现在我们来看看如何实际修改表中的某些行。我们在表中有一列使用了唯一值,可以区分表中的每一行。因此,我们可以轻松地写下UPDATE语句,只改变对应某作者的那行数据。如下:

    时间戳(timestamp,又称时标)值不应被提供。同时,如果列的IDENTITY属性被定义,则这一列的值也不能提供。这些值都由系统产生。如果列有默认值,则它们的值不被提供,而使用默认值。 

复制代码 代码如下:update users set
phone=78789831 where number =231;

修改 
    UPDATE语句用来修改行,语法如下: 
    UPDATE <table_name> SET <column_name> = <value> [,<column_name> = <value>_n] 
    WHERE <search_condition>] 
    Serach_condition是要修改的行应满足的条件。没有WHERE子句的UPDATE语句将修改表中的所有行。在UPDATE语句中也可使用连接。 

比如现在我们要把超市表内的每件商品价格都提高11%,是否有必要为每一行都写一条独立的UPDATE语句呢?就现在的情况而言,也许不会有很多的UPDATE语句要写,但如果是更大的表,这就成问题了。所以回答是否定的。你所要做的只是写一条不指定要更新的行的UPDATE语句,如下所示:

删除 
    DELETE语句用来从表中删除行。语法如下: 
    DELETE [FROM] <table_name> 
    [WHERE <search_condition>]    Serach_condition是删除行要满足的条件。一个无条件DELETE语句将删除表中的所有行。在DELETE语句中也可使用连接。 

复制代码 代码如下:update shop set
priceprice = price * .11 ;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章