工具/材料: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数据库中某一个表中的某一列数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)