当前位置:首页 » 操作系统 » 数据库的更新语句

数据库的更新语句

发布时间: 2022-11-29 10:51:35

数据库update的用法

数据库update的用法的用法你知道吗?下面我就跟你们详细介绍下数据库update的用法的用法,希望对你们有用。

数据库update的用法的用法如下:

sql语句中的更新语句update是最常用的语句之一,下面将为您介绍update语句的三种使用方法,供您参考,希望对您有所帮助。

一、环境:

MySQL-5.0.41-win32

Windows XP professional

二、建立测试环境:

DROP TABLE IF EXISTS t_test;

CREATE TABLE t_test (

bs bigint(20) NOT NULL auto_increment,

username varchar(20) NOT NULL,

password varchar(20) default NULL,

remark varchar(200) default NULL,

PRIMARY KEY (bs)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk;

INSERT INTO t_test VALUES (1,'lavasoft','123456',NULL);

INSERT INTO t_test VALUES (2,'hello',NULL,NULL);

INSERT INTO t_test VALUES (3,'haha',zz,tt);

三、测试

1、set一个字段

在表t_test中设置第二条记录(bs为2)的password为'***'。

update t_test t

set t.password = '***'

where t.bs = 2;

2、set多个字段

在表t_test中设置第一条记录(bs为1)的password为'*'、remark为'*'。

update t_test t

set t.password = '*', t.remark = '*'

where t.bs = 1;

3、set null值

在表t_test中设置第三条记录(bs为3)的password为null、remark为null。

update t_test t

set t.password = null, t.remark = null

where t.bs = 3;

这个是按照标准语法写的,在不同的数据库系统中,update还有更多的写法,但是标准写法都是支持的。以上三个例子为了说明情况,每次都更新一行。在实际中,可以通过where语句约束来控制更新行数。

② 数据库更新语句怎么写

如果按你的要求需要写个存储过程来实现。麻烦。

如果按下面来做的话,会有重复值,
update 表名 set column_no=datepart(day,column_time)

建议你把column_no 按如20090101来更新较方便,这样能与column_time能对应上。

update 表名 set column_no=(datepart(year,column_time)*100+datepart(month,column_time))*100+datepart(day,column_time)

③ Sql Server数据库的更新语句怎么写

string cnn = ConfigurationManager.ConnectionStrings["youSqlConn"].ConnectionString;

using (SqlConnection cn = new SqlConnection())
{
cn.ConnectionString = cnn;
cn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "update table set field='"+ 你的变量+"' where id="+更新条件;
cmd.ExecuteNonQuery(); //执行更新
}

④ sql更新数据库语句

sql更新数据库语句
UPDATE语句用于更新修改指定记录的数据,其用法为:

UPDATE tbl_name SET col_name1=value1, col_name2=value2, … WHERE conditions

对符合条件的记录,更新修改指定字段的值。若没有WHERE条件限定,则对所有记录进行更新修改。例如:

图 4.23 更新记录

⑤ 数据库中update的用法

数据库中update的用法的用法你知道吗?下面我就跟你们详细介绍下数据库中update的用法的用法,希望对你们有用。

数据库中update的用法的用法如下:

首先,单表的UPDATE语句:

UPDATE [LOW_PRIORITY] [IGNORE] tbl_name

SET col_name1=expr1 [, col_name2=expr2 ...]

[WHERE where_definition]

[ORDER BY ...]

[LIMIT row_count]

其次,多表的UPDATE语句:

UPDATE [LOW_PRIORITY] [IGNORE] table_references

SET col_name1=expr1 [, col_name2=expr2 ...]

[WHERE where_definition]

UPDATE语法可以用新值更新原有表行中的各列。

SET子句指示要修改哪些列和要给予哪些值。WHERE子句指定应更新哪些行。

如果没有WHERE子句,则更新所有的行。如果指定了ORDER BY子句,则按照被指定的顺序对行进行更新。

LIMIT子句用于给定一个限值,限制可以被更新的行的数目。

UPDATE语句支持以下修饰符:

1,如果您使用LOW_PRIORITY关键词,则UPDATE的执行被延迟了,直到没有其它的客户端从表中读取为止。

2,如果您使用IGNORE关键词,则即使在更新过程中出现错误,更新语句也不会中断。

如果出现了重复关键字冲突,则这些行不会被更新。如果列被更新后,新值会导致数据转化错误,则这些行被更新为最接近的合法的值。

如果您在一个表达式中通过tbl_name访问一列,则UPDATE使用列中的当前值。

例如,把年龄列设置为比当前值多一:

复制代码 代码如下:

mysql> UPDATE persondata SET age=age+1;

UPDATE赋值被从左到右评估。

例如,对年龄列加倍,然后再进行增加:

复制代码 代码如下:

mysql> UPDATE persondata SET age=age*2, age=age+1;

如果您把一列设置为其当前含有的值,则MySQL会注意到这一点,但不会更新。

如果您把被已定义为NOT NULL的列更新为NULL,则该列被设置到与列类型对应的默认值,并且累加警告数。

对于数字类型,默认值为0;对于字符串类型,默认值为空字符串('');对于日期和时间类型,默认值为“zero”值。

UPDATE会返回实际被改变的行的数目。Mysql_info() C API函数可以返回被匹配和被更新的行的数目,以及在UPDATE过程中产生的警告的数量。

您可以使用LIMIT row_count来限定UPDATE的范围。LIMIT子句是一个与行匹配的限定。

只要发现可以满足WHERE子句的row_count行,则该语句中止,不论这些行是否被改变。

如果一个UPDATE语句包括一个ORDER BY子句,则按照由子句指定的顺序更新行。

您也可以执行包括多个表的UPDATE操作。table_references子句列出了在联合中包含的表。

例子:

复制代码 代码如下:

SQL>UPDATE items,month SET items.price=month.price

WHERE items.id=month.id;

说明:以上代码显示出了使用逗号操作符的内部联合,但是multiple-table UPDATE语句可以使用在SELECT语句中允许的任何类型的联合,比如LEFT JOIN。

注释:不能把ORDER BY或LIMIT与multiple-table UPDATE同时使用。

在一个被更改的multiple-table UPDATE中,有些列被引用。您只需要这些列的UPDATE权限。有些列被读取了,但是没被修改。您只需要这些列的SELECT权限。

如果您使用的multiple-table UPDATE语句中包含带有外键限制的InnoDB表,则MySQL优化符处理表的顺序可能与上下层级关系的顺序不同。

在此情况下,语句无效并被 回滚。同时,更新一个单一表,并且依靠ON UPDATE功能。

该功能由InnoDB提供,用于对其它表进行相应的修改。

目前,不能在一个子查询中更新一个表,同时从同一个表中选择。

update语句的几种基本用法

A. 使用简单的 UPDATE

下列示例说明如果从 UPDATE 语句中去除 WHERE 子句,所有的行会受到什么影响。

下面这个例子说明,如果表 publishers 中的所有出版社将总部搬迁到佐治亚州的亚特兰大市,表 publishers 如何更新。

复制代码 代码如下:

UPDATE publishers

SET city = 'Atlanta', state = 'GA'

本示例将所有出版商的名字变为 NULL。

复制代码 代码如下:

UPDATE publishers

SET pub_name = NULL

也可以在更新中使用计算值。本示例将表 titles 中的所有价格加倍。

复制代码 代码如下:

UPDATE titles

SET price = price * 2

B.把 WHERE 子句和 UPDATE 语句一起使用

WHERE 子句指定要更新的行例如,在下面这个虚构的事件中,北加利福尼亚更名为 Pacifica(缩写为 PC),而奥克兰的市民投票决定将其城市的名字改为 Bay City。这个例子说明如何为奥克兰市以前的所有居民(他们的地址已经过时)更新表 authors。

复制代码 代码如下:

UPDATE authors

SET state = 'PC', city = 'Bay City'

WHERE state = 'CA' AND city = 'Oakland'

必须编写另一个语句来更改北加利福尼亚其它城市的居民所在的州名。

C.通过 UPDATE 语句使用来自另一个表的信息

本示例修改表 titles 中的 ytd_sales 列,以反映表 sales 中的最新销售记录。

复制代码 代码如下:

UPDATE titles

SET ytd_sales = titles.ytd_sales + sales.qty

FROM titles, sales

WHERE titles.title_id = sales.title_id

AND sales.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

这个例子假定,一种特定的商品在特定的日期只记录一批销售量,而且更新是最新的。如果不是这样(即如果一种特定的商品在同一天可以记录不止一批销售量),这里所示的例子将出错。例子可正确执行,但是每种商品只用一批销售量进行更新,而不管那一天实际销售了多少批。这是因为一个 UPDATE 语句从不会对同一行更新两次。

对于特定的商品在同一天可销售不止一批的情况,每种商品的所有销售量必须在 UPDATE 语句中合计在一起,如下例所示:

复制代码 代码如下:

UPDATE titles

SET ytd_sales =

(SELECT SUM(qty)

FROM sales

WHERE sales.title_id = titles.title_id

AND sales.ord_date IN (SELECT MAX(ord_date) FROM sales))

FROM titles, sales

D. 将 UPDATE 语句与 SELECT 语句中的 TOP 子句一起使用

这个例子对来自表 authors 的前十个作者的 state 列进行更新。

复制代码 代码如下:

UPDATE authors

SET state = 'ZZ'

FROM (SELECT TOP 10 * FROM authors ORDER BY au_lname) AS t1

WHERE authors.au_id = t1.au_id

⑥ sql查询 更新语句怎么写

1、首先需要打开sql server 数据库。

⑦ sql数据库更新语句

update
是更新现有的一条记录。
insert
是增加一条新记录。
insert
into
table_name(name,num)
values('A货','20')
字段为什么要设成中文的?用英语来不是好点吗?

⑧ 哪个sql语句用于更新数据库中的数据

update语句,用途是更新表中原有数据,单独使用时使用where匹配字段。

用途:更新表中原有数据。单独使用,使用where匹配字段。set后面,更新字段值,既可以一次一项,也可以一次多项。

例如:Updatetable_nameSetcolumn_name=new_valueWherecolumn_name=some_value

(8)数据库的更新语句扩展阅读:

例:“Person”表中的原始数据:

LastNameFirstNameAddressCity

NilsenFredKirkegt56Stavanger

RasmussenStorgt67

运行下面的SQL将Person表中LastName字段为”Rasmussen”的FirstName更新为”Nina”:

UPDATEPersonSETFirstName='Nina'WHERELastName='Rasmussen'

更新后”Person”表中的数据为:

LastNameFirstNameAddressCity

NilsenFredKirkegt56Stavanger

RasmussenNinaStorgt67

同样的,用UPDATE语句也可以同时更新多个字段:

例如:UPDATEPersonSETAddress='Stien12',City='Stavanger'WHERELastName='Rasmussen'

更新后”Person”表中的数据为:

LastNameFirstNameAddressCity

NilsenFredKirkegt56Stavanger

RasmussenNinaStien12Stavanger

网络-update

⑨ SQL的update语句怎么写

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值,update语句的写法:

1、UPDATE table_name

2、SET column1=value1,column2=value2,...

3、WHERE column(1)=value(1),column(2)=value(2)...and column(n)=value(n);

4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'

(9)数据库的更新语句扩展阅读

SQL的update语句写法的特点

1、一体化:SQL集数据定义DDL、数据操纵DML和数据控制DCL于一体,可以完成数据库中的全部工作。

2、使用方式灵活:它具有两种使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C++、FORTRAN、COBOL、JAVA等主语言中使用。

3、非过程化:只提操作要求,不必描述操作步骤,也不需要导航。使用时只需要告诉计算机“做什么”,而不需要告诉它“怎么做”。

4、语言简洁,语法简单,好学好用:在ANSI标准中,只包含了94个英文单词,核心功能只用6个动词,语法接近英语口语。

⑩ sql update 语句是什么

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值,update语句的写法:

1、UPDATE table_name。

2、SET column1=value1,column2=value2,...。

3、WHERE column(1)=value(1),column(2)=value(2)...and column(n)=value(n)。

4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'。

SQL语句中UPDATE的三种用法:

一、环境:

MySQL-5.0.41-win32。

Windows XP professional。

二、建立测试环境:

DROP TABLE IF EXISTS t_test。

CREATE TABLE t_test 。

bs bigint(20) NOT NULL auto_increment。

username varchar(20) NOT NULL。

password varchar(20) default NULL。

remark varchar(200) default NULL。

PRIMARY KEY (bs)。

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk。

INSERT INTO t_test VALUES (1,'lavasoft','123456',NULL)。

INSERT INTO t_test VALUES (2,'hello',NULL,NULL)。

INSERT INTO t_test VALUES (3,'haha',zz,tt)。

热点内容
cgipython配置 发布:2024-05-20 09:29:06 浏览:865
在我的世界服务器中隐身 发布:2024-05-20 09:07:46 浏览:972
加西贝拉压缩机好吗 发布:2024-05-20 08:58:56 浏览:757
eve脚本航 发布:2024-05-20 08:56:59 浏览:591
取票人的密码是什么 发布:2024-05-20 08:21:43 浏览:962
天猫帐号密码应输入什么 发布:2024-05-20 08:16:26 浏览:272
plsql异常处理 发布:2024-05-20 07:54:47 浏览:542
dreamweaver上传网页 发布:2024-05-20 07:51:24 浏览:462
拍摄车的分镜头脚本 发布:2024-05-20 07:50:15 浏览:137
mg名爵最高配置是哪个 发布:2024-05-20 07:45:11 浏览:376