创建表

--建表语法结构:
/*
CREATE TABLE 表名(
字段名1 数据类型,
字段名2 数据类型
....
);
*/
--建一张老师表,里面包含老师编号,老师姓名,老师联系方式,老师入职日期
CREATE TABLE TEACHER(
TNO NUMBER,
TNAME VARCHAR2(30),
TPHONE CHAR(11),
THIREDATE DATE
);

复制表

--复制表结构,但是不复制数据
--语法结构:CREATE TABLE 表名 AS SELECT查询语句 WHERE 1 = 2;
CREATE TABLE DEPT_BAK AS SELECT * FROM DEPT WHERE 1 = 2; --复制表结构,同时复制数据
--语法结构:CREATE TABLE 表名 AS SELECT查询语句 [WHERE 1 = 1];
CREATE TABLE DEPT_BAK_ALL AS SELECT * FROM DEPT WHERE 1 = 1;

删除表

--删除表
--语法结构:DROP TABLE 表名;
DROP TABLE STUDENT;

新增/插入数据

--单行数据插入的语法结构:
--语法结构:INSERT INTO 表名(字段名1,字段名2,字段名3...) VALUES(插入值1,插入值2,插入值3...);
INSERT INTO TEACHER (TNO, TNAME, TPHONE, THIREDATE) VALUES(1,'zhangsan','13300000000',SYSDATE);
INSERT INTO TEACHER (TNO, TNAME, THIREDATE) VALUES(2,'lisi',SYSDATE - 1);
INSERT INTO TEACHER (TNO, TNAME, TPHONE) VALUES(3,'wangwu','133'); --多行数据插入
--语法结构:INSERT INTO 表名 SELECT 查询语句;
INSERT INTO TEACHER
SELECT * FROM TEACHER; INSERT INTO TEACHER
(TNO, TNAME, TPHONE, THIREDATE)
SELECT T.TNO, T.TNAME, T.TPHONE, T.THIREDATE FROM TEACHER T;

给表新增字段

--语法结构:ALTER TABLE 表名 ADD 字段名 数据类型;
ALTER TABLE TEACHER ADD TLOC VARCHAR2(100);

删除表中数据

--删除表中的所有数据
/*
注意:TRUNCATE和DELETE都能把表中的数据全部删除,他们的区别是在于
1. TRUNCATE是DDL命令,删除的数据不能恢复;
   DELETE命令是DML命令,删除后的数据可以通过日志文件恢复。
2. 如果一个表中数据记录很多,TRUNCATE相对DELETE速度快。
*/

--语法结构:TRUNCATE TABLE 表名;
TRUNCATE TABLE TEACHER; --语法结构:DELETE FROM 表名;
DELETE FROM TEACHER; --删除表中符合条件的数据行
--删除TEACHER表中姓名叫WANGWU的老师信息
--DELETE FROM 表名 WHERE 筛选条件;
DELETE FROM TEACHER WHERE TNAME = 'wangwu';

删除表中字段

--删除表中的某一列(字段)
--语法结构:ALTER TABLE 表名 DROP COLUMN 字段名;
ALTER TABLE TEACHER DROP COLUMN TLOC;

修改表名

--语法结构:ALTER TABLE 旧表名 RENAME TO 新表名;
ALTER TABLE TEACHER RENAME TO T_TEACHER;

修改列名

--语法结构:ALTER TABLE 表名 RENAME COLUMN 旧列名 TO 新列名;
ALTER TABLE T_TEACHER RENAME COLUMN TPHONE TO T_PHONE;

修改字段的数据类型

--语法结构:ALTER TABLE 表名 MODIFY 字段名 新的数据类型;
--注意点:如果表中已经有数据,那么修改数据类型时传入的范围精度必须大于数据中的最大长度
ALTER TABLE T_TEACHER MODIFY T_PHONE VARCHAR2(11); --注意点:如果表中已有数据,那么修改数据类型时,不能由一种数据类型改成另外一种数据类型
ALTER TABLE T_TEACHER MODIFY THIREDATE VARCHAR2(100);

数据行的修改(更新数据)

--整列数据都更新
--语法结构:UPDATE 表名 SET 字段名 = 值;
UPDATE T_TEACHER SET T_LOC = 'zhongguo'; --只更新部分符合要求的数据行
--语法结构:UPDATE 表名 SET 字段名 = 值 WHERE 筛选条件;
UPDATE T_TEACHER SET T_PHONE = '186xxxxxxx' WHERE T_PHONE IS NULL;

Oracle建表和SQL语句的增删改的更多相关文章

  1. oracle 修改表的sql语句

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

  2. 四种简单的sql语句(增删改查语句)

    四种简单的sql语句(增删改查语句) 一.插入语句 insert into [table] ([column],[column],[column]) values(?,?,?) 二.删除语句 dele ...

  3. dml语句就是你常写的sql语句,增删改查

    dml语句就是你常写的sql语句,增删改查

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

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

  5. SQL SQL语句的增删改查

    一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:insert into Strdent ...

  6. SQL语句的增删改查

    一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into] <表名> [列名] values <列值> 例:insert into Strdent ...

  7. SQL语句的增删改查(详细)--转载

    转载源: http://blog.csdn.net/a88055517/article/details/6736284/ 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [ ...

  8. SQL语句的增删改查(详细)

    摘录自:http://blog.csdn.net/a88055517/article/details/6736284 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [in ...

  9. SQL语句简单增删改查

    常用数据类型 Int:整数,长度没有作用 Varchar:字符串,varchar(3)表示最多存放3个字符,1个中文或英文或符合都占1个字符 Decimal:小数,decimal(5,2)表示共存5位 ...

随机推荐

  1. java-异常-异常注意事项

    1 package p1.exception; 2 3 /* 4 * 异常的注意事项: 5 * 6 * 1,子类在覆盖父类方法时,父类的方法如果抛出了异常, 7 * 那么子类的方法只能抛出父类的异常或 ...

  2. 腾讯云轻量服务器通过Docker搭建外网可访问连接的redis5.x集群

    总结记录/朱季谦 最近买了一台4核16的腾讯云轻量应用服务器,花了我快四百的大洋,打算搭建一堆docker组件集群,最先开始是通过docker搭建redis集群,计划使用三个端口,分别是7001,70 ...

  3. linux下查看 SELinux状态及关闭SELinux

    SELinux全称为安全增强式 Security-Enhanced Linux(SELinux),是一个在内核中实践的强制存取控制(MAC)安全性机制.SELinux 首先在 CentOS 4 出现, ...

  4. 微服务架构 | 7.1 基于 OAuth2 的安全认证

    目录 前言 1. OAuth2 基础知识 1.1 安全性的 4 个组成部分 1.2 OAuth2 的工作原理 1.3 OAuth2 规范的 4 种类型的授权 1.4 OAuth2 的优势 1.5 OA ...

  5. 布客&#183;ApacheCN 编程/后端/大数据/人工智能学习资源 2020.6

    公告 我们的群共享文件有备份到 IPFS 的计划,具体时间待定. 我们的机器学习群(915394271)正式改名为财务提升群,望悉知. 请关注我们的公众号"ApacheCN",回复 ...

  6. Mac系统如何显示隐藏文件

    Command+Shift+. 可以显示隐藏文件.文件夹,再按一次,恢复隐藏:finder下使用Command+Shift+G 可以前往任何文件夹,包括隐藏文件夹.

  7. js中全局和局部变量的区别

    2 3 4 5 6 7 8 9 10 <script type="text/javascript"> var a = 1; function hehe() {      ...

  8. 清除git中缓存的凭证(用户名及密码)

    今天刚接触Git,还有Gitstack,然后在克隆Gitstack服务器上的仓库时出现了一直用户身份识别失败问题,找了一些大佬的文章才知道原因在于密码输入错误过多.那么如何重新输入呢? 需要清空本地的 ...

  9. Java泛型T与?

    感谢大佬:http://m.mamicode.com/info-detail-2657551.html 一.区别 单独的T 代表一个类型 ,而 Class<T>代表这个类型所对应的类, C ...

  10. 「2022」打算跳槽涨薪,必问面试题及答案 -- ECMAScript 篇

    起点低怕什么,大不了加倍努力.人生就像一场马拉松比赛,拼的不是起点,而是坚持的耐力和成长的速度.只要努力不止,进步也会不止. 1.ECMAScript 与 JavaScript 的关系? ECMA(E ...