建立员工分类表;

员工分类表结构、内容分别如下图:

 

一、使用PL/SQL Dev 这类可视化工具直接创建表

1.建立表结构

新建-table-名称(egrade)

  

然后 列:创建表结构

2. 输入表数据

有两种方式

①右击关键字 egrade ,选择编辑数据,手动添加数据

1.

2.

3.

② sql 语句输入数据

insert into hr.egrade(e_grade, hire_start, hire_end) values ('B',to_date('','yyyymmdd'),to_date('','yyyymmdd'));

运行结果:

3.删除表数据

再运行以下语句,得到完整的员工分类表

 insert into hr.egrade(e_grade, hire_start, hire_end) values ('C',to_date('','yyyymmdd'),to_date('','yyyymmdd'));

 insert into hr.egrade(e_grade, hire_start, hire_end) values ('D',to_date('','yyyymmdd'),to_date('','yyyymmdd'));

①假设最后一个语句运行两次,D分类重复了:

输入 语句:

select *
from hr.egrade for update;

然后把锁打开,- 去重复行,打完对勾,把锁带上

结果如上。

② 把整个表删除

drop table hr.egrade

二、使用 create table 语句创建表

举例说明:

1.创建person表
-id 主键
-name 唯一
-sex 默认值男
-age 0-100
-birthday
-address 不能为空

 create table person
(ps_id number(4) ,
ps_name varchar2(25),
ps_sex varchar2(25) default '男',
ps_age number(2),
ps_bir varchar2(25),
ps_add varchar2(50) not null,
constraint ps_id_pk primary key(ps_id),
constraint ps_name_uk unique(ps_name),
constraint ps_age_range check(ps_age>=0 and ps_age<=100)
)

查询

select * from sys.person

插入一条数据

 insert into sys.person(ps_id, ps_name, ps_age, ps_bir, ps_add)
values (1001,'jiaxinwei',20,to_date('','yyyymmdd'),'NY,CN')

删除某条数据

delete sys.person where ps_id = 1001

删除表内所有数据

delete sys.person

添加某个字段

alter table sys.person
add(ps_love varchar2(25) default 'yes')

修改字段

alter table sys.person
modify(ps_love varchar2(10) default 'no')

(可以用MODIFY 修改一个字段,可以修改该字段的数据类型、大小、默认值;不过对默认值的修改只会影响后来插入表的数据)

删除字段

alter table sys.person
drop(ps_love)

处于安全考虑,无法删除sys 中的列。但是此语法可以删除其他用户表中的列。

Oracle-SQL 建表的更多相关文章

  1. oracle基本建表语句

    oracle基本建表语句 2010-09-20 10:37:33|  分类: 数据库 |  标签:数据库  oracle  |字号 订阅 --创建用户create user han identifie ...

  2. PowerDesigner连接Oracle数据库建表序列号实现自动增长

    原文:PowerDesigner连接Oracle数据库建表序列号实现自动增长 创建表就不说了.下面开始介绍设置自动增长列. 1 在表视图的列上创建.双击表视图,打开table properties — ...

  3. oracle 存储过程 建表插值等

    建表.插值的procedure create or replace procedure CREATE_EMP is v_createsql ); v_insertsql ); begin v_crea ...

  4. Oracle数据库建表+添加数据练习

    SQL脚本: --建表 --student表+注释 create table student( sno ) not null, sname ) not null, ssex ) not null, s ...

  5. Oracle day05 建表_约束

    表的创建 标准的建表语法 : CREATE TABLE [schema.] table (column datatype [DEFAULT expr], ... ); 使用子查询创建表的语法 CREA ...

  6. oracle SQL多表查询

    SQL多表查询 1.集合理论 1.1 什么是集合 具有某种特定性质的事物的总体. 集合的特性:无序性.互异性.确定性. 一个集合可以小到从一个表中取出一行中的一列.              1 ro ...

  7. oracle的建表语句

    oracle数据库的建表语句,具体语法如下: CREATE TABLE tablename (column_name datatype [null,not null], column_name dat ...

  8. spark sql建表的异常

    在使用spark sql创建表的时候提示如下错误: missing EOF at 'from' near ')' 可以看下你的建表语句中是不是create external table ....   ...

  9. sql建表,建索引注意事项

    建表注意 .建议字段定义为NOT NULL 搜索引擎 MyISAM InnoDB 区别 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基 ...

  10. oracle得到建表语句

    第一种方法是使用工具,如:pl/sql developer,在[工具]--[导出用户对象]出现就可以得到建表脚本. 第二种方法是,sql语句. DBMS_METADATA.GET_DDL包可以得到数据 ...

随机推荐

  1. LeetCode刷题--21.合并两个有序链表(简单)

    题目描述 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 -> 2 -> 4 ,1 -> 3 -> 4 输出:1 ...

  2. 使用forin循环时的注意事项

    由于遍历的对象为nil,从而导致的现象是里面的循环体根本就没有执行,并且编译器和运行期都不会报错.因为,OC语法是运行向nil发送消息的. for (WSFActivitySelectSpaceCel ...

  3. python的线性代数

    估计线性模型中的系数:a=np.linalg.lstsq(x,b),有b=a*x 求方阵的逆矩阵np.linalg.inv(A) 求广义逆矩阵:np.linalg.pinv(A) 求矩阵的行列式:np ...

  4. HDU 5506:GT and set bitset+暴力

    GT and set  Accepts: 35  Submissions: 194  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 655 ...

  5. 白底黑字!Android浅色状态栏黑色字体模式(另)

    小彬什么都想做任重致远 关注 2016.06.30 10:16* 字数 489 阅读 3234评论 3喜欢 12 前言 由于该死不死的设计湿,设计了一套白色状态栏的UI.当然在iOS上可以实现自适应, ...

  6. 移动互联网APP测试流程及测试点

    1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前先向主管确认项目排期. 1.3测试资源 测 ...

  7. Git如何合并Commit

    如果你在 push 你的修改之前想要将本地多次修改后的 commit 合并一下变得更好看,可以使用下面的方法. 指定你要合并的 commit 相关的命令有两种 你可以通过指定修改过去的几个 commi ...

  8. python 阶乘函数

    def num(n): if n == 1: return n return n*num(n-1) print(num(10)) 输出 3628800 该函数使用了递归函数的规则.return 后面为 ...

  9. GCPC 2018

    C.Coolest Ski Route 题意:n个点,m条边组成的有向图,求任意两点之间的最长路径 dfs记忆化搜索 #include<iostream> #include<stri ...

  10. 学习Linux让我进入了知名企业

    说起我学习Linux的原因是多方面的,大学时我学的是物理学师范专业,有部分计算机课程,但我觉得这些课程没什么实际作用,我自己对计算机比较感兴趣,我利用业余时间学习了很多计算机技术.在大学期间我参加了很 ...