Sql 增加字段(有些只能在ORACLE中运行)

增加字段

alter table table_name add column_name varchar(200)





删除字段

ALTER TABLE table_NAME DROP COLUMN column_NAME





修改字段类型

ALTER TABLE table_name ALTER COLUMN column_name new_data_type





修改表字段的长度(修改表结构)

 alter table table_name modify column_name varchar(40) ;





改名



sp_rename



更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。





语法





sp_rename [ @objname = ] 'object_name' ,





    [ @newname = ] 'new_name'





    [ , [ @objtype = ] 'object_type' ]





--假设要处理的表名为: tb





--判断要添加列的表中是否有主键





if exists(select 1 from sysobjects where parent_obj=object_id('tb') and xtype='PK')





begin





print '表中已经有主键,列只能做为普通列添加'





--添加int类型的列,默认值为0





alter table tb add 列名 int default 0





end





else





begin





print '表中无主键,添加主键列'





 查询表中的某些字段重复记录

         select count(*),column_name from table_name group by column_name having count(*)>1;





查询并修改数据(如将67001改为68701,67101改为68801)

        select code,('68' || (substr(code, 2, 1) + substr(code,3,1)) || substr(code,4,2)) as code2 from table_name where code like '67___' ;

        update table_name set code = ('68' || (substr(code, 2, 1) + substr(code,3,1)) || substr(code,4,2)), parentid='68'  where code like '67___' ;



你可能感兴趣的:(oracle)