场景:在生产过程中有时候需要不同的环境中修改表字段,使用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. thphp5.0学习笔记(一)

    1.目录结构: 其中thinkphp子目录是框架核心目录 thinkphp结构: 2.入口文件 默认自带的入口文件位于public/index.php 应用目录为application,其结构: in ...

  2. grunt中常见的插件

    /** * 需要用到的文件夹有 js(src) css image html */ gulp是一种自动化构建工具,可以增强我们的工作流程,他是基于 Node.js 构建的,与gruntjs相比,gul ...

  3. 尝试向树莓派3B引入Drbian 9 arm64-PART 1

    Stage 1:试图加入arm64软件包 笔者默认您清楚这些指令背后的意义以及其可能造成的后果,并默认您已备份重要资料 sudo dpkg --add-archietcture arm64 sudo ...

  4. 使用zabbix_agent监控第一台windows服务器

    解压windows客户端压缩包 bin目录下会有win32和win64俩个文件夹,根据windows系统的版本自行进行选择,将客户端程序文件拷贝至C:\zabbix 将conf文件中的zabbix_a ...

  5. 【CC2530入门教程-04】CC2530的定时/计数器原理与应用

    第4课  CC2530的定时/计数器原理与应用 广东职业技术学院  欧浩源 一.定时/技术器的基本原理 定时/计数器,是一种能够对内部时钟信号或外部输入信号进行计数,当计数值达到设定要求时,向CPU提 ...

  6. 玩转spring boot——websocket

    前言 QQ这类即时通讯工具多数是以桌面应用的方式存在.在没有websocket出现之前,如果开发一个网页版的即时通讯应用,则需要定时刷新页面或定时调用ajax请求,这无疑会加大服务器的负载和增加了客户 ...

  7. 使用PHP二维码生成类库PHP QR Code生成二维码

    <?php include 'phpqrcode.php'; $value = 'http://www.helloweba.com'; //二维码内容 $errorCorrectionLevel ...

  8. Kafka 源代码分析之log框架介绍

    这里主要介绍log管理,读写相关的类的调用关系的介绍. 在围绕log的实际处理上.有很多层的封装和调用.这里主要介绍一下调用结构和顺序. 首先从LogManager开始. 调用关系简单如下:LogMa ...

  9. 【LeetCode】258. Add Digits

    题目: Given a non-negative integer num, repeatedly add all its digits until the result has only one di ...

  10. 【技术解密】SequoiaDB分布式存储原理

    分布式架构势在必行 在传统的数据库技术中,为了保证数据的安全与高性能,通常会选择高端的外置存储作为数据库的主要存储源,而本地磁盘则被视为不可靠的性能低下的一种设备.这种观念的产生,主要是由于过去本地磁 ...