场景:在生产过程中有时候需要不同的环境中修改表字段,使用sql语句比较方便!

1 演示

--添加字段的语法
alter table tablename add (column datatype [default value][null/not null],….); --修改字段的语法
alter table tablename modify (column datatype [default value][null/not null],….); --删除字段的语法
alter table tablename drop (column);

1.1 普通字段修改

增加字段:

alter table TRNDETAIL
add (acplevel1 VARCHAR2(2) ,
paylevel1 VARCHAR2(2));

增加字段注释:

comment on column TRNDETAIL.acplevel1
is ' --收款账户类別';
comment on column TRNDETAIL.paylevel1
is ' --付款账户类别';

修改字段:

alter table TMS_CORPIMG modify CORPIMG null;

删除字段:

alter table TRNDETAIL
drop (acplevel1, paylevel1 );

1.2 主键字段修改

在原有表基础上增加主键的时候需要先删除原有字段,再重新设置主键约束。

--删除主键
ALTER TABLE TWS_ACCTVERIFY drop CONSTRAINT PK_TWSACCTVERIFY; --添加新的主键约束
alter table TWS_ACCTVERIFY add constraint PK_TWSACCTVERIFY primary key(SUBNODE, TRANSTYPE, SUBDATE, TRANSNO, SUBDAY);

1.3 删除表中的数据

truncate table tablename
delete from tablename
delete方法最大的问题,当有标志字段时就有问题

一般建议尽可能使用delete去刪除表的字段,它具有选择 性刪除的作用,所以常常delete from tablename where 条件
delete和truncate作用其实是一樣的,只是truncate后面不跟where条件句,它的作用是刪除表中所有的行(记录)
两者最大的区別就是delete是写日志文件的,而truncate則不写日志直接刪除,前者可恢复,而后者無法恢復,后者的危險性更高,所以一般不建议 使用truncate,常用delete

1

plsql修改表字段alter的更多相关文章

  1. DB2修改表字段

    1:删除字段非空属性 alter table XXX alter column XXX drop not null 此特性需要DB2 9.0以上的版本 2:添加字段非空属性alter table XX ...

  2. oracle修改表字段

    --添加字段 )); -- 修改字段的长度- ));

  3. sql server 修改表字段

    1.添加表说明 EXECUTE sp_addextendedproperty N'MS_Description','表说明',N'user',N'dbo',N'table',N'表名',NULL,NU ...

  4. SQL修改表字段,加附属属性

    GO Go EXEC sys.[sp_addextendedproperty] @name = 'MS_Description',@value = '是否填写表单',@level0type = 'SC ...

  5. MySQL Workbench查看和修改表字段的Comment值

    查看: 选择单个表->[右键]->[Table Inspector] 再选择Columns选项卡即可,把表格拉倒最后一列. 编辑: 选择单个表->[右键]->[Alter Ta ...

  6. django orm 改动数据库中已存在的表(添加、删除、修改表字段)

    python3 manage.py makemigrations --empty api # 因为我的models.py文件并直接在项目根目录,而是根目录下的api目录中 python3 manage ...

  7. mysql alter 用法,修改表,字段等信息

    一: 修改表信息 1.修改表名 alter table test_a rename to sys_app; 2.修改表注释 alter table sys_application comment '系 ...

  8. 查看mysql字符集及修改表结构--表字符集,字段字符集

    MySQL 乱码的根源是的 MySQL 字符集设置不当的问题,本文汇总了有关查看 MySQL 字符集的命令.包括查看 MySQL 数据库服务器字符集.查看 MySQL 数据库字符集,以及数据表和字段的 ...

  9. Oracle 修改表 Alter Table...

    --增加列ALTER TABLE Student add sex number(2);--删除列ALTER TABLE Student drop column sex;--更改列属性 ALTER TA ...

随机推荐

  1. BOM(2)

    Window 子对象 (1)Location 对象 Location 对象包含有关当前 URL(统一资源定位符) 的信息.(Uniform Resource Location) Location 对象 ...

  2. 深入理解JavaScript中的闭包

    闭包没有想象的那么简单 闭包的概念在JavaScript中占据了十分重要的地位,有不少开发者分不清匿名函数和闭包的概念,把它们混为一谈,我希望借这篇文章能够让大家对闭包有一个清晰的认识. 大家都知道变 ...

  3. java基础(System.err和System.out)

    今天有位同事在使用System.err和System.out遇上了一些小问题. 看了些资料总结下: 1.JDK文档对两者的解释: out: "标准"输出流.此流已打开并准备接受输出 ...

  4. abelkhan服务器框架

    abelkhan是一个开源的游戏服务器框架.目标是提供一个稳定.高效.可扩展的服务器框架. github:https://github.com/qianqians/abelkhan 论坛:http:/ ...

  5. 6.解决AXIOS的跨域问题

    在服务端加上: response.addHeader("Access-Control-Allow-Origin", "*"); response.addHead ...

  6. DOCKER 从入门到放弃(二)

    搜索镜像 从docker官方镜像仓库搜索镜像 docker search [OPTIONS] TERM OPTIONS: --automated :只显示自动创建的镜像,默认值为fasle --fil ...

  7. LR监控Windows Server 2008 R2系统资源提示“指定的网络名不可用。”

    问题现象: LR监控远程服务器Window Server 2008 R2 系统资源,提示“Monitor name :Windows Resources. Cannot connect to mach ...

  8. Redis主从复制及状态监测

    参考链接:http://www.cnblogs.com/morvenhuang/p/4184262.html #配置redis主从复制: #安装redis- master slave #修改slave ...

  9. VB6之WebBrowser控件

    UI短手或者GDI+用烦的童鞋可以借用WebBrowser打造漂亮的程序界面,只需要下载一个好看点的html代码就够了. 引用: Microsoft Html Object Library 部件: M ...

  10. (转载)oracle的v$sqlarea表

    原文摘自:http: [V$SQLAREA]  本视图持续跟踪所有shared pool中的共享cursor,在shared pool中的每一条SQL语句都对应一列.本视图在分析SQL语句资源使用方面 ...