SQL数据库如何同时修改一张表里的多个数据

SQL数据库如何同时修改一张表里的多个数据,第1张

工具/材料:Management Studio。

1、首先在桌面上,点击“Management Studio”图标。

2、接着在窗口上,点击左上角工具栏里“新建查询”按钮。

3、再者在窗口上,输入同时修改一张表里的多个数据的sql语句“update test2 set grade = 100, no = 20”。

4、其次在窗口上,点击左上方工具栏里“执行”按钮。

5、最后在窗口上,显示同时修改一张表里的多个数据成功。

1、删除原来的列:

alter

table

sell_order

drop

column

order_id1;

2、重新建一个符合你要求的列:

alter

table

sell_order

add

order_id1

int

identity(1,2);

相同的问题干嘛要问两遍呀,呵呵。

最好的方法是批量修改,即每次修改5000条(一次修改不要超过一万条,否则影响性能) 虽然在11g中,我们也可以选择使用merge命令,但你的这种情况最好先修改一部分然后看看影响,毕竟在生产环境作这样的 *** 作风险很大。如果是误 *** 作,最好还是请DBA来恢复,虽然这样做会被挨骂,但总比错上加错,最后连挨骂的机会都没有要好得多。如果对这些修改真的有信心,而只是从性能考虑,那可以用下面的方法(pk_col 是表的主键

1、构建临时表进行主键关联更新

需求:T1表有千万级别的数据量,需要更新这个表的字段a,b满足2个条件的记录。

做法:一般业务会将条件通过excel表格提供给开发,那么开发首先需要将这个excel表格的内容插入到临时表T2中,考虑到a,b都不是主键,那么需要将a,b转化成主键后再插入到T2表中,T2表中还可以保存更新前的数据,方便做数据回滚,T2表中有数据后,就可以执行下面脚本进行更新 *** 作:

ps:c,d是需要更新的 *** 作,e,f是条件。必须强调的是id必须是主键

1、构建临时表进行主键关联更新

需求:T1表有千万级别的数据量,需要更新这个表的字段a,b满足2个条件的记录。

做法:一般业务会将条件通过excel表格提供给开发,那么开发首先需要将这个excel表格的内容插入到临时表T2中,考虑到a,b都不是主键,那么需要将a,b转化成主键后再插入到T2表中,T2表中还可以保存更新前的数据,方便做数据回滚,T2表中有数据后,就可以执行下面脚本进行更新 *** 作:

ps:c,d是需要更新的 *** 作,e,f是条件。必须强调的是id必须是主键

下面列出:

1增加一个字段

alter

table

user

add

COLUMN

new1

VARCHAR(20)

DEFAULT

NULL;

//增加一个字段,默认为空

alter

table

user

add

COLUMN

new2

VARCHAR(20)

NOT

NULL;

//增加一个字段,默认不能为空

2删除一个字段

alter

table

user

DROP

COLUMN

new2;

//删除一个字段

3修改一个字段

alter

table

user

MODIFY

new1

VARCHAR(10);

//修改一个字段的类型

alter

table

user

CHANGE

new1

new4

int; 

//修改一个字段的名称,此时一定要重新

//主键

alter

table

tabelname

add

new_field_id

int(5)

unsigned

default

0

not

null

auto_increment

,add

primary

key

(new_field_id);

//增加一个新列

alter

table

t2

add

d

timestamp;

alter

table

infos

add

ex

tinyint

not

null

default

‘0′;

//删除列

alter

table

t2

drop

column

c;

//重命名列

alter

table

t1

change

a

b

integer;

//改变列的类型

alter

table

t1

change

b

b

bigint

not

null;

alter

table

infos

change

list

list

tinyint

not

null

default

‘0′;

//重命名表

alter

table

t1

rename

t2;

加索引

mysql>

alter

table

tablename

change

depno

depno

int(5)

not

null;

mysql>

alter

table

tablename

add

index

索引名

(字段名1[,字段名2

…]);

mysql>

alter

table

tablename

add

index

emp_name

(name);

加主关键字的索引

mysql>

alter

table

tablename

add

primary

key(id);

加唯一限制条件的索引

mysql>

alter

table

tablename

add

unique

emp_name2(cardnumber);

删除某个索引

mysql>alter

table

tablename

drop

index

emp_name;

增加字段:

mysql>

ALTER

TABLE

table_name

ADD

field_name

field_type;

修改原字段名称及类型:

mysql>

ALTER

TABLE

table_name

CHANGE

old_field_name

new_field_name

field_type;

删除字段:

mysql>

ALTER

TABLE

table_name

DROP

field_name;

mysql修改字段长度

alter

table

表名

modify

column

字段名

类型;

例如

数据库中user表

name字段是varchar(30)

可以用

alter

table

user

modify

column

name

varchar(50)

;

要修改的表上点鼠标右键选“设计视图”,鼠标右键点击要修改的字段选“插入行”,

新插入的行字段名称随便输,数据类型选“备注”,关闭设计视图。

双击刚修改的表打开它:鼠标右键点击要修改字段的字段名称处(这时整列数据被选取),选“复制”;再用鼠标右键点击刚添加字段的字段名称处,选“粘贴”。关闭表。

重新打开表的“设计视图”,把原字段删除,插入字段重命名为原字段的名称。

ok~~

首先写一个函数:函数功能,传进来一个字符串,变小写,从左到右循环,每循环两次的时候,插入一个冒号,+1后再循环。以此类推。

这一套下来之后,结尾会多出一个冒号,记得用left干掉最后一位。

返回处理完的字符串

函数完毕

最后执行sql

update 表 set 字段=函数(字段) where 条件

以上就是关于SQL数据库如何同时修改一张表里的多个数据全部的内容,包括:SQL数据库如何同时修改一张表里的多个数据、SQL中如何修改一某列中的一个数字。、如何批量修改oracle数据库中某一个表中的某一列数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9443818.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存