Oracle-DDL,DML理解以及应用
SQL语句:虽然SQL语句不区分大小写,但是字符串的值时区分大小写的。
SQL是结构化查询语句,操作数据库需要向数据库发送SQL语句,数据库会理解SQL语句中含义并执行
SQL语句分为:
DDL(数据定义语言):用来操作数据库对象数据库对象:表,试图,索引,序列
数据库定义语句用于增删改数据库对象
--创建表
CREATE TABLE employee( id NUMBER(4), name VARCHAR2(20),gender CHAR(1),birth DATE,salary NUMBER(6,2),job VARCHAR2(30),deptno NUMBER(2))
--查看表结构:DESC employee
字段默认值(DEfAULT):数据库中多有字段不论是什么类型,默认值都是null,可以使用DEFAULT为字段单独指定默认值(在需要指定的字段后面加关键字DEfAULT并将默认的值赋在其后)。
--NOT NULL 当一个字段被设置为not null 约束后,该字段的值不允许为空(使用方法与设置默认值方法相同都是在需要设置的字段后面添加,这个约束不需要写值)。
--删除表DROP TABLE employee
修改表:
1.修改表名字RENAME EMPLOYEE_ZYL to MYEMP_ZYL
2.修改表结构
1添加新的字段:需要注意,添加的字段只能被追加到表的最后一列中,不能再现有的字段中间插入一个字段
ALTER TABLE MYEMP ADD(hiredate DATE)
2删除字段:将现有的字段删除,需要注意的是注意数据安全。
ALTER TABLE MYEMP DROP(hiredate)
3修改现有字段:可以修改字段的类型,长度,添加约束或者设定默认值若表中以存在数据,则不要修改字段的类型,长度尽可能只增不减,否则可能会修改失败
ALTER TABLE MYEMP MODIFY(job VARCHAR2(40))
DML(数据操作语言):用来操作表中数据
用来增删改表中的数据,DML总是伴随事物(TCL)的
1.INSERT:用于向表中插入新的记录(insert into 表名(字段)values(值),将对应字段的值设置进去),插入数据时,可以不指定字段名,若不指定则是全列插入。
INSERT INTO MYEMP(ID,NAME,SALARY,JOB) VALUES (1,'jack',3000,'CLERK')
2.插入如期类型数据时,建议使用函数TO_DATE,该函数可以将一个字符串按照指定的日期格式转换为Date类型。
TO_DATE('1999-09-09','YYYY-MM-DD')--将一个字符串日期转成date型
3.UPDATE语句,修改表中数据需要注意,修改语句通常需要添加where子句,这样可以限定要求改的记录,若不添加where,则是全表所有记录都进行修改,添加了则只会将满足where条件的记录进行修改
UPDATE MYEMP SET SALARY=5000,DEPTNO=20 WHERE ID=1
4.DELETE语句,删除表中数据需要注意,删除语句通常需要添加where子句,这样可以限定要删除的记录,若不添加where,则是清空表操作,添加了则只会将满足where条件的记录进行删除
DELETE FROM MYEMP WHERE SALARY=1234
TRUNCATE TABLE MYEMP_LIMIN:删除表
我是初学者,如有更新不好的,欢迎这位大神指出,谢谢大家!
更多精彩以后更新,转载注明!
Oracle-DDL,DML理解以及应用的更多相关文章
- Oracle DDL+DML+DCL实例
SQL语言共分为四大类: 数据查询语言DQL: 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块. 数据操纵语言DML: DML是“数据操纵语言”( Data ...
- ORA-38301:can not perform DDL/DML over objects in Recycle Bin
一个智障操作,drop一个用户,下面的东西比较多,删得比较慢,然后shell突然关了. 就导致了,删不掉,又不能创建新的用户.出版本要得比较急,就先创建新的用户测试去了. 今天要弄个东西,又想起这个事 ...
- DDL DML DCL SQL
https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_ddl SQL The Structured Query Language tha ...
- Hive数据据类型 DDL DML
Hive的基本数据类型 DDL DML: 基本数据类型 对于Hive而言String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以 ...
- MySQL中的DDL,DML
MySQL中的DDL,DMLDDL:数据定义语言: CREATE,ALTER,DROP DB组件:数据库.表.索引.视图.用户.存储过程.存储函数.触发器.事件调度器等 CR ...
- SQL语言:DDL,DML,DCL,DQL,TCL
DDL(Data Definition Language)数据库定义语言 statements are used to define the database structure or schema. ...
- Oracle中的DDL,DML,DCL总结
转自http://blog.csdn.net/w183705952/article/details/7354974 DML(Data Manipulation Language,数据操作语言):用于检 ...
- oracle中DDL DML指什么?
DDL create table 创建表 alter table 修改表 drop table 删除表 truncate table 删除表中所有行 create index 创建索引 drop in ...
- oracle学习----DDL锁理解
DDL锁分为三种 1.排他DDL锁 2.共享DDL锁 3.可中断解析锁 大部分DDL都带有排他DDL锁,如一个表被修改中,可以使用select查询数据,但是大多数操作都是不允许执行的,包括所有其他DD ...
- Oracle 之——子查询 DDL DML 集合 及其他数据对象
Oracle 学习笔记(二) 知识概要: 1.子查询 2.集合操作 3.DML语句操作 4.其他数据库对象 1.子查询 查询工资比SCOTT高的员工信息 1 select * 2 from emp ...
随机推荐
- pandas:聚合统计、数据分箱、分组可视化
1.聚合统计 1.1描述统计 #df.describe(),对数据的总体特征进行描述 df.groupby('team').describe() df.groupby('team').describe ...
- 第06组Alpha冲刺(6/6)
目录 1.1 基本情况 1.2 冲刺概况汇报 1.郝雷明 2.曹兰英 3. 方梓涵 4.曾丽莉 5.鲍凌函 6.杜筱 7.黄少丹 8.詹鑫冰 9.董翔云 10.吴沅静 1.3 冲刺成果展示 1.1 基 ...
- 深度学习与CV教程(2) | 图像分类与机器学习基础
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...
- [CSP-S 2019 Day2]Emiya家今天的饭
思路: 这种题目就考我们首先想到一个性质.这题其实容易想到:超限的菜最多只有一个,再加上这题有容斥那味,就枚举超限的菜然后dp就做完了. 推式子能力还是不行,要看题解. 式子还需要一个优化,就是废除冗 ...
- 《Effective C++》阅读总结(三):资源管理
C++中的资源管理非常重要,在将资源加载到内存后,便可以使用资源了,当我们不再需要资源时,我们要保证其正确的释放,才能将其占用的内存空间归还给操作系统,不正确的释放很容易造成内存泄漏.本章以资源管理类 ...
- 12.MYSQL基础-常见函数
4. 常见函数 一.字符函数 概念 类似于Java的方法,将一组逻辑语句封装在方法中,对外暴露方法名 优点 隐藏了实现细节 提高代码的重用性 调用 select 函数名(实参列表) [ from 表] ...
- 用STM32玩L298N(正反转、调速)
目录 用STM32玩L298N(正反转.调速) 控制直流电机正反转 使用PWM调速 用STM32玩L298N(正反转.调速) 开发板:STM32F103ZET6(正点原子F103核心板)/STM32F ...
- Windows环境下安装RabbitMQ
本地安装RabbitMQ安装注意事项: Erlang与RabbitMQ,安装路径都应不含空格符. Erlang使用了环境变量HOMEDRIVE与HOMEPATH来访问配置文件.erlang.cooki ...
- HIPPO-4J 1.3.0 正式发布:支持 Dubbo、RibbitMQ、RocketMQ 框架线程池
文章首发在公众号(龙台的技术笔记),之后同步到个人网站:xiaomage.info Hippo-4J 距离上一个版本 1.2.1 已经过去一个月的时间.在此期间,由 8 位贡献者 提交了 170+ c ...
- centos8 编译安装 httpd-2.4
前提:关闭selinux和防火墙 SElinux: setenforce 0 vim /etc/selinux/config-->disable 防火墙: firewall-cmd --set- ...