1.创建表

1.创建表

create table SCM_PER(  --SCM_PER表名
ID NUMBER(6) primary key,--主键ID
USERID varchar2(30),--用户ID
--Permission varchar2(11),--用户权限
--begin_date date,
--end_date date,
--def_date date,
--def_usr_id varchar2(30),
upd_date date,
upd_usr_id varchar2(30),
PRE_INV_005 number,
PRE_CM_001 number(2),
PRE_STK_039 number(2),
PRE_INV_012 number(2),
PRE_PRB_001 number(2),
REM varchar2(200)
)
SELECT * FROM SCM_PER

2.创建序列

create sequence SCM_PER_Seq  --序列名
increment by 1
start with 1
maxvalue 999999999;

3.创建触发器

create or replace trigger SCM_PER_TRG
before insert
on SCM_PER
for each row
declare
ID NUMBER;
begin
SELECT SCM_PER_Seq.Nextval
INTO :NEW.ID
FROM DUAL;
end;

 4.删除列

alter table tablename drop (column)

5.增加列

alter table tablename add (column datatype [default value][null/not null],….);
--增加新字段
alter table TABLENAME add NAME VARCHAR2(200);
--增加备注
comment on column TABLENAME.NAME is '注释';

2.修改字段类型

注:无法直接修改字段类型,方法是添加一个新列,将原数据更新到新列中

--PROJ为tablename,CONSTRUCTION_SEQ为原列名
--修改原表名
alter table PROJ rename column CONSTRUCTION_SEQ to CONSTRUCTION_SEQold;
--增加新字段
alter table PROJ add CONSTRUCTION_SEQ VARCHAR2(200);
--增加备注
comment on column PROJ.CONSTRUCTION_SEQ is '更改后的字段,建造序列';--to_char
--将原字段数据给到新字段
update PROJ set CONSTRUCTION_SEQ=to_char(CONSTRUCTION_SEQold);
--删除原字段
alter table PROJ drop column CONSTRUCTION_SEQold;

 3.查询树形所有上下级数据

select * from std_cls start with std_cls_id='SABT' connect by prior p_std_cls_no=std_cls_no
union
(select * from std_cls start with std_cls_id='SABT' connect by prior std_cls_no=p_std_cls_no)

 4.常用语句

1.将回车符去除

update TABLENAME t set t.column=replace(t.column,chr(13),'');--/r

2.转成日期格式

To_Date('2019-09-11 09:11:07', 'yyyy-mm-dd hh24:mi:ss')

3.找到某个字段有非数字的

select * from Non_Ship_Mat s where regexp_replace(substr(s.non_ship_mat_id, 9, 14),'^[-\+]?\d+(\.\d+)?$','') is not null;

Oracle创建表、修改字段类型的更多相关文章

  1. Access sql语句创建表及字段类型

    创建一张空表: Sql="Create TABLE [表名]" 创建一张有字段的表: Sql="Create TABLE [表名]([字段名1] MEMO NOT NUL ...

  2. Access sql语句创建表及字段类型(转)

    http://www.cnblogs.com/hnyei/archive/2012/02/23/2364812.html 创建一张空表: Sql="Create TABLE [表名]&quo ...

  3. navicat for oracle 创建表ID字段的自动递增

    Oracle数据库创建表ID字段的自动递增   将表t_uaer的字段ID设置为自增:(用序列sequence的方法来实现) ----创建表 Create table t_user( Id numbe ...

  4. mysql创建表时字段类型选择与优化

    一.选择原则 1.应该尽量使用可以正确存储数据的最小字段类型 2.选用简单的数据类型,例如:一个是尽量用mysql内置的字段类型来存储日期和时间:另一个存储IP地址尽量用整型:能用整型的尽量不用字符串 ...

  5. Oracle基本操作,Oracle修改列名,Oracle修改字段类型

    oracle基本操作,Oracle修改列名,Oracle修改字段类型 >>>>>>>>>>>>>>>>& ...

  6. oracle如何修改字段类型(oracle总体知识2)

    在一次做开发的时候,遇到需要将数据表的字段类型由number改成varchar,可是该字段又有值, 用  alter table t-name modify cname newType;会报错. 话说 ...

  7. Oracle修改字段类型和长度

    Oracle修改字段名 alter table 表名 rename column 旧字段名 to 新字段名 Oracle修改字段类型和长度 alter table 表名 modify 字段名 数据类型 ...

  8. Oracle使用SQL语句修改字段类型

    Oracle使用SQL语句修改字段类型 1.如果表中没有数据 Sql代码 1 2 3 alter table 表名 modify (字段名1 类型,字段名2 类型,字段名3 类型.....)  alt ...

  9. Oracle/SQL 修改字段类型和长度

    标准SQL修改字段类型和长度语句: ALTER TABLE tableName modify column columnName 类型;例如Mysql的修改字段类型语句:alter table tes ...

随机推荐

  1. raise error

    raise TypeError("参数q_type 错误 ")

  2. LeetCode 5 最长对称串

    LeetCode 5 最长对称串 最早时候做这道题的时候还是用Java写的,用的是字符串匹配的思路,一直Time Limit Exceeded.甚至还想过用KMP开优化子串查找. public cla ...

  3. (.NET高级课程笔记)委托、事件总结

      1.委托的声明.实例化和调用 同样的,也可以把事务写成上面的形式 2.泛型委托---Func.Action 3.委托的意义:解耦 4.委托的意义:异步多线程 5.委托的意义:多播委托 6.观察者模 ...

  4. python模块学习之hashlib模块学习

    # 加密模块 import hashlib # md5 加密 md5 # 1.初始化md5模块 生成md5对象 # 2.引入要加密的数据 update # 3.获取加密值 hexdigest m = ...

  5. git远程管理

  6. 指定时间生成cron表达式

    public class CronUtils { private static final SimpleDateFormat sdf = new SimpleDateFormat("ss m ...

  7. ubuntu16.04SSH无法连接

    提示错误:server responded "algorithm negotiation failed” 解决办法: 修改ssh的配置文件 /etc/ssh/sshd_config文件 在末 ...

  8. 运输计划NOIP2015Day2T3

    运输计划 题目描述 公元 2044 年,人类进入了宇宙纪元. L 国有 n 个星球,还有 n-1 条双向航道,每条航道建立在两个星球之间,这 n-1 条 航道连通了 L 国的所有星球. 小 P 掌管一 ...

  9. JAVA函数的重载和重写

    一.什么是重载(overlording) 在JAVA中,可以在同一个类中存在多个函数,函数名称相同但参数列表不同.这就是函数的重载(overlording).这是类的多太性表现之一. 二.重载的作用: ...

  10. 20175208 张家华 MyCP

    一.内容 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...