update BB set BBPrice=AAPrice from BTABLEB BB
inner join ALABLEA AA on BBProd=AAProdcode
如果在一个服务器上,可以用语句实现。
insert
into
database1dbotable1(a1,a2)
select
b1,b2
from
database2dbotable2
若在不同服务器上,可以用数据库的导出功能。
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语句约束来控制更新行数。
update ClassSubject set AvgScore=bsas
from ClassSubject a,(select sum(AvgScore) as sas,ClassId,SubjectId from ItemValid group by ClassId,SubjectId) b
where aClassId=bClassId and aSubjectId=bSubjectId
如果不行的话就将查询做一个临时表
select sum(AvgScore) as sas,ClassId,SubjectId INTO #A from ItemValid group by ClassId,SubjectId
go
update ClassSubject set AvgScore=bsas
from ClassSubject a,#A b
where aClassId=bClassId and aSubjectId=bSubjectId
go
用c#写sql语句
int NUM =32;
string str ="";
for (int a;a<400;a++)
{
str +="update recipe set photo_E_L='r0"+ NUMtostring() +"png' where id="+ NUMtostring();+"\r\n"
NUM ++;
}
//上面的代码 你得到了你要执行的sql语句,你可以将str输出到textbox中复制到企业管理器中执行,或者在c#中直接执行。
//不知道你的数据库,只能帮你这么多了
//补充下,因为是拼接字符串生成sql语句,不需要考虑数据类型
在数据库的 *** 作中,更新数据,是很常见的情况。如下参考:
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的核心部分相当于关系代数,但又具有关系代数所没有的许多特点,如聚集、数据库更新等。它是一个综合的、通用的、功能极强的关系数据库语言。
SQL数据同步:利用数据库复制技术实现数据同步(同时)更新、复制等概念
说明 :
复制是将一组数据从一个数据源拷贝到多个数据源的技术,是将一份数据发布到多个存储站点上的有效方式。使用复制技术,用户可以将一份数据发布到多台服务器上,从而使不同的服务器用户都可以在权限的许可的范围内共享这份数据。复制技术可以确保分布在不同地点的数据自动同步更新,从而保证数据的一致性。
SQLSERVER提供了三种复制技术,分别是:
1、快照复制
2、事务复制
3、合并复制
具体的步骤太多,你可以参考一下。
可以使用循环语句
while 条件
begin
执行 *** 作
set @i=@i+1
end
WHILE
设置重复执行 SQL 语句或语句块的条件。只要指定的条件为真,就重复执行语句。可以使用 BREAK 和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执行。
延展阅读:
SQL语句
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;sql 语句就是对数据库进行 *** 作的一种语言。
语句
数据库:CREATE DATABASE database-name
删除数据:drop database dbname
创建表:create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],)
删除新表:drop table tabname
增加:Alter table tabname add column col type
设主键:Alter table tabname add primary key(col)
删除主键:Alter table tabname drop primary key(col)
创建索引:create [unique] index idxname on tabname(col…)
删除索引:drop index idxname
创建视图:create view viewname as select statement
删除视图:drop view viewname
sql语句
更新:update table1 set field1=value1 where 范围
查找:select from table1 where field1 like '%value1%' (所有包含'value1'这个模式的字符串)
排序:select from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1[separator]
以上就是关于SQL批量更新数据全部的内容,包括:SQL批量更新数据、SQL如何将两个不同数据库同一张表的数据同步更新(sqlserver把一个表的数据更新到另一个表)、sql数据库更新语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)