您的位置:首页 > 数据库 > Oracle

Oracle-SQL01

2016-04-17 14:22 375 查看

简介

数据库:DB,数据库管理系统:DBMS

关系型数据库:描述两个元素间的关联或对应关系,使用关系模型把数据组织到二维数据表中

一对一,一对多,多对多(双向一对多)

数据库中列叫字段,行叫记录

SQL(结构化查询语言)分为:

*DDL:数据定义语言 建立,修改,删除数据库对象

*DML:数据操纵语言 改变数据表中的数据

*TCL:事务控制语言 用来维护数据一致性的语句

*DQL:数据查询语言 用来查询所需要的数据

*DCL:数据控制语言 用于执行权限的授予和收回操作

SQL语句不区分大小写,但是为了阅读方便,建议关键字与非关键字大小写分开,通常关键字全大写,非关键字全小写

Oracle数据类型

NUMBER:数字类型 NUMBER(P,S);P表示数字总位数,S表示小数点后位数

CHAR:固定长度字符类型,最多2000字节,CHAR(N);定长字符串,一定要写够N位字节(查询高效,空间资源浪费)

VARCHAR2:(仅Oracle支持):变长字符类型,最多4000字节,VARCHAR2(N);变长字符串,N表示最多可占用的字节数(空间资源节省,查询低效)

VARCHAR:各大数据库都支持,与VARCHAR2几乎无区别

字符串的字面量注意与JAVA区分,在数据库中,所有字符串字面量使用单引号,字符串的字面量区分大小写

DATE:定义日期时间的数据,只精确到秒

在数据库中,所有数据类型的默认值都是NULL,即:当我们向某张表插入数据时,若某些字段没有给定值时,无论该字段是什么类型,默认值都是NULL,但是可以通过创建表时使用DEFAULT为指定字段单独设置默认值,这样在插入数据时出现上述情况时,则使用指定的默认值作为该字段的值

DDL语言

建立,修改,删除数据库对象

1. 创建表:CREATE语句 CREATE TABLE 表名(字段名 数据类型,……….);

2. DESC语句:DESC 表名 查看表的结构

3. NOT NULL语句 在创建表时,可以为字段设置NOT NULL约束,当某个字段被NOT NULL修饰后,该字段必须给值

4. DEFAULT语句 为指定字段单独设置默认值

5. DROP TABLE 表名:删除表

6. 修改表名: RENAME 旧表名 TO 新表名

7. 对列的操作:

*增加列: ALTER TABLE 表名 ADD(字段名 数据类型,…);只能在末尾追加

*删除列: ALTER TABLE 表名 DROP(字段名…);可删除任意位置的列

*修改列: ALTER TABLE 表名 MODIFY(字段名 数据类型,…);修改列只能修改列的类型,长度,添加默认值或 NOT NULL约束等,当表中存在数据时再修改字段应当注意:尽量不修改字段类型(可能与表中现有数据类型冲突),修改字段长度应当尽量增加而不是缩短

DML语言

增删改表中数据,伴随事务控制使用

1. 插入数据: INSERT INTO 表名 (要插入数据的字段名,以逗号隔开)VALUES (要插入的值,顺序要与前边的字段名一致);插入数据时,可以不定义字段,若忽略则是全列插入,给定值必须与表中字段类型,顺序完全一致

2. 删除数据: DELETE FORM 表名 WHERE 字段+值(符合过滤条件的才会删除,无WHERE子句则是全部删除)

3. 查看表中数据: SELECT * FROM 表名

4. 更新表中数据: UPDATE 表名 SET 字段+值,字段+值,… WHERE 字段+值(定位需要更改的记录),更新表中数据应当添加WHERE子句,添加过滤条件,这样只会讲满足条件的记录修改,不添加WHERE则是全表所有数据都修改

5. 关于日期 默认格式:日-月-年 后边还有时分秒,默认不显示,TO_DATE语句可以修改日期格式,如:YY-MM-DD,YYYY/MM/DD
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: