Oracle-1
来源:互联网 发布:小清新记账软件 编辑:程序博客网 时间:2024/06/05 20:17
数据库简介
DB和DBMS
DB:数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
DBMS:数据库管理系统(DataBase Management System),管理数据库的软件。关系数据库简介:
关系:描述两个元素的关联或对应关系。
使用关系模型把数据组织到二维数据表中(Table)。
产品化:Oracle,MySQL,DB2表的概念:
一个关系数据库有多个数据表组成,数据表是关系数据库的基本存储结构。
表是二维的,由行和列组成。
表与表之间存在关联关系。
SQL概述
SQL概述:
sql:结构化查询语言。
sql是在关系数据库上执行数据操作,检索及维护所使用的标准语言,可以用来查询数据,操纵数据,定义数据,控制数据。
sql可分为:
—数据定义语言:DDL;
—数据操纵语言:DML;
—数据控制语言:TCL;
—数据查询语言:DQL;
—数据控制语言:DCL;数据定义语言:DDL
用于建立、修改、删除数据库对象。
包括:
—CREATE:创建表或其他对象的结构。
—ALTER:修改表或其他对象的结构。
—DROP:删除表或其他对象的结构。
—TRUNCATE:删除表数据,保留表结构。数据操纵语言:DML
用于改变数据表中的数据
和事物相关,执行完后需要经过事物控制语句提交后才真正改变应用到数据库中。
包括:
—INSERT:将数据插入到数据表中;
—UPDATE:更新数据表中已经存在的数据;
—DELETE:删除数据表中的数据。事物控制语言:TCL
用来维护数据一致性的语句。
包括:
—COMMIT:提交,确认已经进行的数据改变;
—ROLLBACK:回滚,取消已经进行的数据改变;
—SAVEPOINT:保存点,使当前的事物可以回退到指定的保存点,便于取消部分改变。数据查询语言:DQL
用来查询所需要的数据
SELECT语句。数据控制语言:DCL
用于执行权限的授予和收回操作
包括:
—GRANT:授予,用于给用户或角色授予权限
—REVOKE:用于收回用户或角色的权限
—CREATE USER:创建用户
Oracle数据类型
NUMBER:表示数字类型
经常被定义成NUMBER(P,S)
形式,其中:
–p表示数字的总位数
–s表示小数点后面的位数
如:sal NUMBER(6,2)CHAR:固定长度的字符类型
经常被定义成 CHAR(N)的形式,N表示占用的字节数。
如: ename CHAR(20),表示ename列中最多可以存储20个字节的字符串,并且这个长度是固定的。VARCHAR2:变长的字符类型
定义格式为 VARCHAR2(N),N表示最多可占用的字节数。
如: ename VARCHAR2(20),表示ename列中最多可以存储20个字节的字符串,并且这个长度是可变的,即字符串实际长度为多少就用多少。DATE:定义日期时间的数据
默认格式是:DD-MON-RR
如:11-APR-71
创建表
CREATE语句:创建表
CREATE TABLE emp(empno NUMBER(4,0),enname VARCHAR2(10),job VARCHAR2(9),mgr NUMBER(4,0),hiredate DATE,sal NUMBER(7,2),comm NUMBER(7,2),depton NUMBER(2,0)
DESC语句:查看表结构
DESC empDEFAULT语句:给列指定默认值
CREATE TABLE emp(id NUMBER(4,0),ename VARCHAR2(10),sal NUMBER(7,2),gender CHAR(1) DEFAULT 'M')
NOT NULL语句:
非空约束,确保该字段值部位空;
默认情况下,任何猎都可以为空;
当某个字段被设置为NOT NULL,该字段必须保存有效值;
当执行插入语句时,必须为该列提供数据,否则会报错;
当执行更新操作时,不能给这个列设置NULL。CREATE TABLE emp(id NUMBER(4,0),ename VARCHAR2(10),sal NUMBER(7,2), NOT NULLgender CHAR(1) DEFAULT 'M')
修改表
修改表名
使用RENAME语句实现修改表名RENAME old_name TO new_name
增加列
给表增加列可以通过使用 ALTER TABLE 的ADD子句实现
如:给emp增加hiredate列,默认为sysdateALTER TABLE emp ADD (hiredate DATE DEFAULT sysdate)
删除列
使用ALTER TABLE 的DROP 语句删除不需要的列。
如:删除日期那一列ALTER TABLE emp DROP(hiredate)
修改列
建表之后可以改变表中列的数据类型,长度和默认值
修改表仅仅对插入以后的数据有效
如果把长度改小有可能不成功
如:修改表中job,并增加默认值ALTER TABLE empMODIFY (job VARCHAR2(40) DEFAULT 'CKERK')
DML语句
INSERT语句:
给数据表增加记录
如:给emp表插入数据,注意,可以不同时把所有的字段的数据都插进去,但是NOT NULL 的必须要有。insert into emp(empno,enname,job,mgr,hiredate,sal,depton)values(7902,'ford','analyst',7566,TO_DATE('1981_12_03','YYYY-MM-DD'),3000,20)
执行DML语句后,需要在执行commit语句,才算真正确认了此操作。
UPDATE语句
更新表中记录
语法格式:
UPDATE table_name
SET column=value[column=value]…
[WHERE condition]
如果没有WHERE 语句,则表示该表中所有的数据都会更新。
如:更新职员ROSE的薪水为7000UPDATE emp SET salary=7000WHERE name='ROSE'
DELETE 语句:
删除表中记录DELETE FROM empWHERE job is null
如果没有WHERE 语句,则删除全表。
- 【Oracle】Oracle基础知识1
- Oracle 1
- oracle-1
- oracle 1
- oracle 1
- ORACLE 1
- oracle-1
- oracle--1
- Oracle-1
- Oracle-1
- Oracle-1
- Oracle – Oracle SQL(1)
- Oracle学习1:Oracle简介
- ORACLE学习笔记(1)--ORACLE安装
- Oracle Report開發(1)--Oracle Report Builder
- oracle学习笔记1--oracle体系结构
- Oracle Tips 1 (Oracle Architectural Components)
- [oracle] MySql 与 Oracle 的迁移 1
- hdu1041 Computer Transformation 大数找规律
- JVM内存模型
- week2 多变量线性回归
- Servlet学习笔记 -- day03 servlet三大域对象总结
- PromiseKit 封装异步Api
- Oracle-1
- 安全篇-AES/RSA加密机制
- 分布式爬虫架构设计
- 计算机网络读书笔记——数据链路层(1)
- Cesium学习笔记(六):几何和外观(Geometry and Appearances)
- Python pip包管理器
- Mybatis-SpringMVC-Spring 用log4j在控制台输出 SQL
- android字体格式设置解决方案
- Android打包生成自定义文件名配置