按如下语句就行了:
update [表名] set [字段名] = [值];
如果是根据一个表更新此表,套用如下方式:
update [表名] set [字段名] = (select [字段名] from [其他表] where [两表间的关联条件])。
一、简单介绍
1SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
2SQL语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言作为数据输入与管理的接口。SQL语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。
二、应用信息
结构化查询语言SQL(STRUCTURED QUERY LANGUAGE)是最重要的关系数据库 *** 作语言,并且它的影响已经超出数据库领域,得到其他领域的重视和采用,如人工智能领域的数据检索,第四代软件开发工具中嵌入SQL的语言等。
三、支持标准
SQL 是1986年10 月由美国国家标准局(ANSI)通过的数据库语言美国标准,接着,国际标准化组织(ISO)颁布了SQL正式国际标准。1989年4月,ISO提出了具有完整性特征的SQL89标准,1992年11月又公布了SQL92标准,在此标准中,把数据库分为三个级别:基本集、标准集和完全集。
四、其他版本
1各种不同的数据库对SQL语言的支持与标准存在着细微的不同,这是因为,有的产品的开发先于标准的公布,另外,各产品开发商为了达到特殊的性能或新的特性,需要对标准进行扩展。已有100多种遍布在从微机到大型机上的数据库产品SQL,其中包括DB2、SQL/DS、ORACLE、INGRES、SYBASE、SQLSERVER、DBASEⅣ、PARADOX、MICROSOFTACCESS等。
2SQL语言基本上独立于数据库本身、使用的机器、网络、 *** 作系统,基于SQL的DBMS产品可以运行在从个人机、工作站到基于局域网、小型机和大型机的各种计算机系统上,具有良好的可移植性。可以看出标准化的工作是很有意义的。早在1987年就有些有识之士预测SQL的标准化是“一场革命”,是“关系数据库管理系统的转折点”。数据库和各种产品都使用SQL作为共同的数据存取语言和标准的接口,使不同数据库系统之间的互 *** 作有了共同的基础,进而实现异构机、各种 *** 作环境的共享与移植
31974年,在IBM公司圣约瑟研究实验室研制的大型关系数据库管理系统SYSTEM R 中,使用SEQUEL语言(由BOYCE 和CHAMBERLIN 提出),后来在SEQUEL 的基础上发展了SQL 语言。 SQL语言是一种交互式查询语言,允许用户直接查询存储数据,但它不是完整的程序语言,如它没有DO或FOR 类似的循环语句,但它可以嵌入到另一种语言中,也可以借用VB、C、JAVA等语言,通过调用级接口(CALL LEVEL INTERFACE)直接发送到数据库管理系统。SQL基本上是域关系演算,但可以实现关系代数 *** 作。
五、语言特点
1一体化
SQL集数据定义DDL、数据 *** 纵DML和数据控制DCL于一体,可以完成数据库中的全部工作。
2使用方式灵活
它具有两种使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C++、FORTRAN、COBOL、JAVA等主语言中使用。
3非过程化
只提 *** 作要求,不必描述 *** 作步骤,也不需要导航。使用时只需要告诉计算机“做什么”,而不需要告诉它“怎么做”。
4语言简洁,语法简单,好学好用
在ANSI标准中,只包含了94个英文单词,核心功能只用6个动词,语法接近英语口语。
SQL语句中的更新语句update是最常用的语句之一,下面将介绍update语句的三种使用方法,供参考
一、环境:
MySQL-5041-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 tpassword = ''
where tbs = 2;
2、set多个字段
在表t_test中设置第一条记录(bs为1)的password为''、remark为''。
update t_test t
set tpassword = '', tremark = ''
where tbs = 1;
3、set null值
在表t_test中设置第三条记录(bs为3)的password为null、remark为null。
update t_test t
set tpassword = null, tremark = null
where tbs = 3;
这个是按照标准语法写的,在不同的数据库系统中,update还有更多的写法,但是标准写法都是支持的。以上三个例子为了说明情况,每次都更新一行。在实际中,可以通过where语句约束来控制更新行数。
如果都是SQL的数据库的话,在第二步的时候就默认选择SQL Server 的Microsoft OLE DB提供程序 就可以了。
1、打开企业管理器,打开要导入数据的数据库,在表上按右键,所有任务-->导入数据,d出DTS导入/导出向导,按 下一步 ;
2、选择数据源 Microsoft Excel 97-2000,文件名 选择要导入的xls文件,按 下一步;
3、选择目的 用于SQL Server 的Microsoft OLE DB提供程序,服务器选择本地(如果是本地数据库的话,如 VVV),使用SQL Server身份验证,用户名sa,密码为空,数据库选择要导入数据的数据库(如 client),按 下一步;
4、选择 用一条查询指定要传输的数据,按 下一步;
5、按 查询生成器,在源表列表中,有要导入的xls文件的列,将各列加入到右边的 选中的列 列表中,这一步一定要注意,加入列的顺序一定要与数据库中字段定义的顺序相同,否则将会出错,按 下一步;
6、选择要对数据进行排列的顺序,在这一步中选择的列就是在查询语句中 order by 后面所跟的列,按 下一步;
7、如果要全部导入,则选择 全部行,按 下一步;
8、则会看到根据前面的 *** 作生成的查询语句,确认无误后,按 下一步;
9、会看到 表/工作表/Excel命名区域 列表,在 目的 列,选择要导入数据的那个表,按 下一步;
10、选择 立即运行,按 下一步;
11、会看到整个 *** 作的摘要,按 完成 即可。
sql 语句是对数据库进行 *** 作的一种语言。结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
两种方法:
1把两个表需要关联的字段,设置主外键关联,然后设置它们级联更新和删除就行了
2呢,就是给一个表建立触发器,当插入或更新的时候,自动更新另一个表。
试试吧!
在数据库的 *** 作中,更新数据,是很常见的情况。如下参考:
1创建一个临时表,用于演示sqlserver语法中的更新更新修改方法。
2 创建另一个临时表,以演示如何将数据从一个临时表更新到另一个临时表,如下图。
3在临时表中插入几行测试数据,但不在Total列中插入值。
4从#tblUpdate中查询临时表select 中的测试数据;从#tblTotal中选择。
5使用update更新临时表#tblUpdate中的Total结果,假设Total = num price update #tblUpdate set Total = Num Price。
6 再次查询临时表#tblUpdate的结果,您可以看到之前为NULL的Total列有值。
注意事项:
SQL的核心部分相当于关系代数,但又具有关系代数所没有的许多特点,如聚集、数据库更新等。它是一个综合的、通用的、功能极强的关系数据库语言。
方法、过程如下:
在每个数据库的table1\table2都建立插入、删除、修改触发器
如在A1上
ceate trigger dbotable1_u on A1dbotable1 for insert,update,delete as
IF @@rowcount = 0 RETURN
declare @no_i int -- 假设no为关键字
--declare 其他字段
declare @no_d int -- 假设no为关键字
--declare 其他字段
--赋值
select @no_i =no ,--其他值
from inserted
select @no_d =no ,--其他值
from deleted
--判断@no_d,@no_i 是否在A2,A3,A4,A5的表中存在
--1、如果@no_d,@no_i 都存在,则用新值更新A2,A3,A4,A5的talbe1
--2、如果@no_d不存在@no_i存在,则将新值插入A2,A3,A4,A5的talbe1
--3、如果@no_d存在@no_i不存在,则删除A2,A3,A4,A5的talbe1对应的值
if exists(select 1 from A2dbotalbe1 where no = @no_d) and
exists(select 1 from A2dbotalbe1 where no = @no_i)
begin
--修改A2数据库的表
end
一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新。而表的更新 *** 作中,在很多情况下需要在表达式中引用要更新的表以外的数据。我们先来讨论根据其他表数据更新你要更新的表
一、MS
SQL
Server
多表关联更新
sql
server提供了update的from
子句,可以将要更新的表与其它的数据源连接起来。虽然只能对一个表进行更新,但是通过将要更新的表与其它的数据源连接起来,就可以在update的表达式
中引用要更新的表以外的其它数据。
一般形式:
update
A
SET
字段1=B表字段表达式,
字段2=B表字段表达式
from
B
WHERE
逻辑表达式
例如:
UPDATE
dboTable2
SET
dboTable2ColB
=
dboTable2ColB
+
dboTable1ColB
FROM
dboTable2
INNER
JOIN
dboTable1
ON
(dboTable2ColA
=
dboTable1ColA);
实际更新的 *** 作是在要更新的表上进行的,而不是在from子句所形成的新的结果集上进行的
以上就是关于SQL 同时更新一张表里的一个字段所有数据全部的内容,包括:SQL 同时更新一张表里的一个字段所有数据、sql数据库更新语句、用sql如何把一个表的数据更新到另一个表上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)