创建表

--建表语法结构:
/*
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. 巅峰对决之Swarm、Kubernetes、Mesos

    另外一篇 https://www.sohu.com/a/157185937_287582 Docker Docker是一个主流容器管理工具,它是第一个基于Linux容器(LXC)的[2],但是现在被r ...

  2. java继承子类实例化过程(细节解释)

    1 package face_08; 2 class Fu{ 3 Fu(){ 4 super(); 5 show(); 6 return; 7 } 8 void show() { 9 System.o ...

  3. Tomcat服务器和Servlet版本的对应关系

    Tomcat服务器和Servlet版本的对应关系 Servlet 程序从2.5版本是现在世面使用最多的版本(xml配置) 到了Servlet3.0后.就是注解版本的Servlet使用

  4. ubuntu输入正确密码重新跳到登录界面

     原因一:/etc/profile或者/etc/enviroment  配置错误 (很多开发人员在配置完java环境之后容易出现这种情况) 解决办法(已验证): 1,开机后在登录界面按下shift+c ...

  5. rsync.sh

    #!/bin/bash file1=`du -sm /var/www/vhosts/|awk '{print $1}'` ps=`ps -C rsync --no-header|wc -l` if [ ...

  6. Mac OS Fusion Linux虚拟机网络设置

    1.设定网络为nat 2.ifconfig查看mac机的ip 3.进入虚拟机设定网络,手动指定自己ip为mac机网段ip,xxx.xxx.xxx.2是固定的路由及DNS的ip 4.关闭再打开网络即可访 ...

  7. Android Studio中添加对HttpClient的支持包

    感谢大佬:https://blog.csdn.net/gladiator0975/article/details/49177959 sdk6.0以后取消了HttpClient,设置android SD ...

  8. 物理CPU,物理核,逻辑CPU,虚拟CPU(vCPU)区别 (转)

    在做虚拟化时候,遇到划分CPU的问题,因此考虑到CPU不知道具体怎么划分,查询一些资料后就写成本文. a. 物理CPU:物理CPU是相对于虚拟CPU而言的概念,指实际存在的处理器,就是我们可以看的见, ...

  9. 【转载收藏】使用Jacoco远程统计tomcat服务的代码覆盖率

    在做软件开发的时候经常会遇到做各种测试,这里介绍一种本人遇到的:代码覆盖率测试, 这个测试非常实用,能发现许多无效的模块和代码.强烈推荐!!!!! 网上好多资料都不全,而且没有详细的配置流程 本文将简 ...

  10. 出现Table ‘./mysql/proc’ is marked as crashed and should be repaired

    一般这种表崩溃的问题出现在mysql异常停止,或者使用kill -9命令强行杀掉进程导致,进入MySQL命令行后,执行下面的命令即可修复'./mysql/proc'表 repair table mys ...