Oracle-SQL 建表
建立员工分类表;
员工分类表结构、内容分别如下图:
一、使用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 建表的更多相关文章
- oracle基本建表语句
oracle基本建表语句 2010-09-20 10:37:33| 分类: 数据库 | 标签:数据库 oracle |字号 订阅 --创建用户create user han identifie ...
- PowerDesigner连接Oracle数据库建表序列号实现自动增长
原文:PowerDesigner连接Oracle数据库建表序列号实现自动增长 创建表就不说了.下面开始介绍设置自动增长列. 1 在表视图的列上创建.双击表视图,打开table properties — ...
- oracle 存储过程 建表插值等
建表.插值的procedure create or replace procedure CREATE_EMP is v_createsql ); v_insertsql ); begin v_crea ...
- Oracle数据库建表+添加数据练习
SQL脚本: --建表 --student表+注释 create table student( sno ) not null, sname ) not null, ssex ) not null, s ...
- Oracle day05 建表_约束
表的创建 标准的建表语法 : CREATE TABLE [schema.] table (column datatype [DEFAULT expr], ... ); 使用子查询创建表的语法 CREA ...
- oracle SQL多表查询
SQL多表查询 1.集合理论 1.1 什么是集合 具有某种特定性质的事物的总体. 集合的特性:无序性.互异性.确定性. 一个集合可以小到从一个表中取出一行中的一列. 1 ro ...
- oracle的建表语句
oracle数据库的建表语句,具体语法如下: CREATE TABLE tablename (column_name datatype [null,not null], column_name dat ...
- spark sql建表的异常
在使用spark sql创建表的时候提示如下错误: missing EOF at 'from' near ')' 可以看下你的建表语句中是不是create external table .... ...
- sql建表,建索引注意事项
建表注意 .建议字段定义为NOT NULL 搜索引擎 MyISAM InnoDB 区别 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基 ...
- oracle得到建表语句
第一种方法是使用工具,如:pl/sql developer,在[工具]--[导出用户对象]出现就可以得到建表脚本. 第二种方法是,sql语句. DBMS_METADATA.GET_DDL包可以得到数据 ...
随机推荐
- LeetCode刷题--21.合并两个有序链表(简单)
题目描述 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 -> 2 -> 4 ,1 -> 3 -> 4 输出:1 ...
- 使用forin循环时的注意事项
由于遍历的对象为nil,从而导致的现象是里面的循环体根本就没有执行,并且编译器和运行期都不会报错.因为,OC语法是运行向nil发送消息的. for (WSFActivitySelectSpaceCel ...
- python的线性代数
估计线性模型中的系数:a=np.linalg.lstsq(x,b),有b=a*x 求方阵的逆矩阵np.linalg.inv(A) 求广义逆矩阵:np.linalg.pinv(A) 求矩阵的行列式:np ...
- HDU 5506:GT and set bitset+暴力
GT and set Accepts: 35 Submissions: 194 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 655 ...
- 白底黑字!Android浅色状态栏黑色字体模式(另)
小彬什么都想做任重致远 关注 2016.06.30 10:16* 字数 489 阅读 3234评论 3喜欢 12 前言 由于该死不死的设计湿,设计了一套白色状态栏的UI.当然在iOS上可以实现自适应, ...
- 移动互联网APP测试流程及测试点
1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前先向主管确认项目排期. 1.3测试资源 测 ...
- Git如何合并Commit
如果你在 push 你的修改之前想要将本地多次修改后的 commit 合并一下变得更好看,可以使用下面的方法. 指定你要合并的 commit 相关的命令有两种 你可以通过指定修改过去的几个 commi ...
- python 阶乘函数
def num(n): if n == 1: return n return n*num(n-1) print(num(10)) 输出 3628800 该函数使用了递归函数的规则.return 后面为 ...
- GCPC 2018
C.Coolest Ski Route 题意:n个点,m条边组成的有向图,求任意两点之间的最长路径 dfs记忆化搜索 #include<iostream> #include<stri ...
- 学习Linux让我进入了知名企业
说起我学习Linux的原因是多方面的,大学时我学的是物理学师范专业,有部分计算机课程,但我觉得这些课程没什么实际作用,我自己对计算机比较感兴趣,我利用业余时间学习了很多计算机技术.在大学期间我参加了很 ...