/*
数据类型
1. number(M,N)   整数位和小数位最多是M,其中小数位为N位
2. char(M):定长字符串,长度为M,如果插入数据时长度小于M,则在末尾补上空格
3. varchar2(M):不定长字符串,最大长度是M,如果插入数据时长度小于M,则按实际的数据插入,不作不空格的处理
4. date:日期
*/

/*
约束:约束是作用在表的字段上
1. 主键约束 primary key:唯一标识一行数据,唯一+非空
2. 非空约束not null:不能为空,不能往非空约束的列中插入null,空字符串''。如果表中已经有数据行,新增列时不能添加非空约束
3. 唯一约束unique:不允许有重复值,其中null是可以有重复
4. 默认约束default:默认值,如果插入数据时没有指定值则插入默认值,如果指定了值则取指定的值;只能在插入数据时起作用
5. 检查约束check: 字段值必须满足检查要求
6. 外键约束foreign key: 在其他表中是主键;插入数据时,外键字段值必须是主表存在的数据;主键表中数据被外键表引用,则主键表中数据不允许删除
*/

--新建表
/*
create table 表名(
列名1  数据类型  约束,
列名2 数据类型  约束,
列名3  数据类型  约束,
列名4  数据类型  约束,
列名N  数据类型  约束
);
*/
create  table  numberTest(
nn number(5,2) primary key,   -- number(5,2)最小可以存放-999.99,最大是999.99
cc varchar2(20)  not null,
ee  date  unique,
ff  varchar2(10) default 'hello',
gender  varchar2(10)  check (gender='male'  or  gender='female')
);

--查询数据teacherinfo中的所有数据
select * from teacherinfo;

--插入数据
insert into teacherinfo values(2,'Lily','dsdfsfhsdhf',12);

--删除数据
delete from teacherinfo where ff=‘hello’;

--删除表
--drop  table  表名;
drop   table subject;

--修改表结构
--alter table  表名  add/ modify / drop column   列名 数据类型(长度)  约束;

--新增一列
alter table  numberTest  add  tf varchar2(10) unique;

--修改列属性
alter table numberTest modify tf  varchar2(20); --修改列数据类型、长度时,原有的约束不会变更

--修改字段名
--alter table 表名 rename column  原字段名  to 新字段名;
alter table numberTest rename column  tf  to tff;

--删除字段
--alter table  表名 drop column 字段名;
alter table  numberTest drop column tff;
--外键的使用
create table teacherinfo(
teacherID number primary key,
teacherName  varchar2(20),
teacherZC varchar2(100),
teacherJL number
);

create table subject(
subjectId number primary key,
subjectName  varchar2(20),
subjectKS   number,
teaID  number  references  teacherinfo(teacherID)   --列名  数据类型   references 主表表名(主表主键名)
);

1.oracle之表管理sql的更多相关文章

  1. oracle 修改表的sql语句

    oracle 修改表的sql语句     1增加一个列:ALTER TABLE 表名 ADD(列名 数据类型);如:ALTER TABLE emp ADD(license varchar2(256)) ...

  2. Oracle系统表整理 --sql

    -- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝大部分都是视图-- DBA_TABLES意为DBA拥有的或可以访问的所有的关系表.-- ALL_TABLES意为某一 ...

  3. Oracle建表提示SQL 错误: ORA-00904: : 标识符无效

    Oracle建表提示: 错误报告:SQL 错误: ORA-00904: : 标识符无效00904. 00000 -  "%s: invalid identifier"*Cause: ...

  4. Oracle创建表管理表

    --创建图书表 create table books_lib ( book_id ) primary key, --unique&not null book_name ) not null ) ...

  5. oracle各种常用管理sql及其他 ---待续

    启动客户端工具:sqlplus /nolog 使用sysdba链接:conn / as sysdba; select * from dba_users; --查看数据库里面所有用户,前提是你是有dba ...

  6. Oracle建表和SQL语句的增删改

    创建表 --建表语法结构: /* CREATE TABLE 表名( 字段名1 数据类型, 字段名2 数据类型 .... ); */ --建一张老师表,里面包含老师编号,老师姓名,老师联系方式,老师入职 ...

  7. 2.oracle之用户管理sql

    --创建用户--create user  用户名  identified by  密码;create user jojo identified by bean; --给用户授权--grant conn ...

  8. 创建oracle数据表示例sql

    CREATE TABLE "BRAND_RELATION"    (        "ID" NUMBER(10,0) NOT NULL ENABLE,    ...

  9. Oracle创建表空间和表

    创建表空间和表ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的oracle中的表就是一张存储数据的表.表空间是逻辑上的划分.方便管理的.数据表空间 (Tablesp ...

随机推荐

  1. 基于框架的RPC通信技术原理解析

    RPC的由来 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当网站流量很小时, ...

  2. Vue 组件&组件之间的通信 之全局组件与局部组件

    在上篇博客中介绍了组件,在注册组件的简写中就用到了全局组件 //注册组件的简写方式 Vue.component('my-componenta',{ template:'<h2>hello ...

  3. $O(n+log(mod))$求乘法逆元的方法

    题目 LOJ #152. 乘法逆元 2 题解 一个奇技淫巧qwq.可以离线求乘法逆元,效率\(O(n+log(mod))\). 考虑处理出\(s_n\)表示\(\prod_{i=1}^na_i\).以 ...

  4. 论文笔记:Visual Question Answering as a Meta Learning Task

    Visual Question Answering as a Meta Learning Task ECCV 2018 2018-09-13 19:58:08 Paper: http://openac ...

  5. Unity_3DText文字显示模糊怎么办

    在unity3d中创建一个3d text文字对象模型,但是发现默认情况下显示的文字很模糊,这种情况我们可以通过放大字体尺寸的方式解决这个问题,然后通过缩放的方式改变其大小. 1.打开unity3d场景 ...

  6. Docker镜像Push到DockerHub

    1.自己整理的容器首先通过commit做成本地镜像 docker commit -a "Cristin" -m "测试开发平台Jenkins" 281eef85 ...

  7. spring(aop面向切面编程)

    aop很早有研究过,但是最近想回顾下,顺便记录下,aop的优点有很多,实用性也很广,就好比最早在公司没有使用aop的时候没个业务层都要写try catch来捕获异常,来处理异常,甚至于记录异常或者日志 ...

  8. Eclispe创建maven工程缺失web.xml报web.xml is missing and <failOnMissingWebXml> is set to true的错误

    Eclispe创建maven工程缺失web.xml报web.xml is missing and <failOnMissingWebXml> is set to true的错误,一看,还缺 ...

  9. 第 8 章 容器网络 - 069 - Calico 的默认连通性

    相同calico 网络之间的连通性 测试一下 bbox1 与 bbox2 的连通性: ping 成功,数据包流向如下图所示. 1)根据 bbox1 的路由表,将数据包从 cal0 发出. 2)数据经过 ...

  10. RabbitMQ(3) Spring boot集成RabbitMQ

    springboot集成RabbitMQ非常简单,如果只是简单的使用配置非常少,springboot提供了spring-boot-starter-amqp项目对消息各种支持. 资源代码:练习用的代码. ...