Oracle 入门
CREATE TABLESPACE tablespacename
DATAFILE ‘filename’ [SIZE integer [K|M]]
[AUTOEXTEND [OFF|ON]];
开始运行输入services.msc
找到OracleService........右键菜单点击启动
找到Oracle.......Listener右键菜单点击启动
开始运行输入cmd
输入net start OracleService........
输入lsnrctl start
创建新用户
CREATE USER MARTIN
IDENTIFIED BY martinpwd
GRANT
命令可用于为用户分配权限或角色
GRANT CONNECT,RESOURCE,CREATE TO MARTIN;
授予用户 MARTIN 操作TEST表对象的权限
GRANT SELECT ON TEST TO MARTIN;
GRANT UPDATE ON TEST TO MARTIN;
GRANT ALL ON TEST TO MARTIN;
ALTER USER 命令可用于更改口令
ALTER USER MARTIN IDENTIFIED BY martinpass;
DROP USER 命令用于删除用户
DROP USER MARTIN CASCADE;
数据定义语言(DDL)create alter drop
数据操纵语言(DML)insert select delect update
事务控制语言(TCL)commit savepoint rollback
数据控制语言(DCL)grant revoke
数据类
字符 数值 日期时间 RAW/LONG RAW LOB
字符数据:CHAR VARCHAR2 LONG
数值数据:NUMBER[(p[,s])]
日期时间数据:DATE TIMESTAMP
RAW 数据类型用于存储二进制数据
RAW 数据类型最多能存储 2000 字节
LONG RAW 数据类型用于存储可变长度的二进制数据
LONG RAW 数据类型最多能存储 2 GB
LOB 称为“大对象”数据类型,可以存储多达 4GB 的非结构化信息,例如声音剪辑和视频文件等
LOB 数据类型允许对数据进行高效、随机、分段的访问
Oracle 中伪列就像一个表列,但是它并没有存储在表中
伪列可以从表中查询,但不能插入、更新和删除它们的值
常用的伪列有ROWID和ROWNUM
ROWID 是表中行的存储地址,该地址可以唯一地标识数据库中的一行,可以使用 ROWID 伪列快速地定位表中的一行
ROWNUM 是查询返回的结果集中行的序号,可以使用它来限制查询返回的行数
数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象
用于操纵表结构的数据定义语言命令有:
CREATE TABLE
ALTER TABLE
TRUNCATE TABLE
DROP TABLE
DDL – Create Table命令
创建表
语法:
CREAT TABLE SQL 模式名.基本表名
(列名,类型,
……
完整性约束...);
注:完整性约束包括主键子句(PRIMARY KEY)、检查子句(CHECK)和外键子句(Foreign KEY)。
SQL> CREATE TABLE martin.t_stu (
f_id char(3) NOT NULL Primary Key,
f_name char(8) NOT NULL ,
f_sex char(1) NOT NULL ,
f_birth date NULL ,
f_department char(5) NULL ,
);
DDL – Alter Table命令
基本表结构的修改:
ALTER TABLE 基本表名 ADD/MODIFY/DROP (增加/修改/删除) 列名 类型名(增加/修改时写出)或增加/修改/删除 约束
SQL> ALTER TABLE t_stu Add f_class int;
SQL> ALTER TABLE t_stu Modify f_class char(2);
SQL> ALTER TABLE t_stu Drop column f_class;
SQL> ALTER TABLE t_stu Add constraint cons_name Unique(f_name);
DDL – 撤销及截断命令
基本表的撤消:
DROP TABLE 基本表名
SQL> DROP TABLE t_stu;
基本表的截断:
Truncate TABLE 基本表名
注:截断表是将表中所有记录删除,但保留表结构,并且不写日志
VS Delete from 基本表名
SQL> TRUNCATE TABLE t_stu;
约束方法:唯一约束、主键约束
约束方法:限制数据类型、检查约束、外键约束、默认值、非空约束
约束方法:外键约束
约束方法:规则、存储过程、触发器
数据操纵语言
数据操纵语言用于检索、插入和修改数据
数据操纵语言是最常见的SQL命令
数据操纵语言命令包括:
SELECT
INSERT
UPDATE
DELETE
DML – INSERT 命令
基本表数据的插入:
INSERT INTO 基本表名[(columns_list)] VALUES(values_list)
插入日期类型的值
日期数据类型的默认格式为“DD-MON-YY”
使用日期的默认格式
使用TO_DATE函数转换
INSERT INTO t_student
VALUES('013', 'Peter', 'm', '25-5月-84', 'CS',1);
INSERT INTO t_student(f_id,f_name,f_sex,f_birth)
VALUES (‘014’,‘Mary’,‘f’,TO_DATE(’85/10/18', 'YY/MM/DD'));
插入来自其它表中的记录
语法:
INSERT INTO <table_name> [(cloumn_list)]
SELECT column_names FROM <other_table_name>;
SQL> CREATE TABLE t_stutemp AS
SELECT * FROM t_student WHERE 1=2;
SQL> INSERT INTO t_stutemp
SELECT * FROM t_student WHERE f_class=1;
SQL> INSERT INTO t_stutem(f_id,f_name,f_sex)
SELECT f_id, f_name, f_sex FROM t_student
WHERE f_class=2;
数据控制语言
数据控制语言为用户提供权限控制命令
用于权限控制的命令有:
GRANT 授予权限
REVOKE 撤销已授予的权限
SQL> GRANT SELECT ON t_student
TO scott WITH GRANT OPTION;
SQL> REVOKE SELECT, UPDATE ON t_student
FROM MARTIN;
总结
SQL 是通用的数据库语言
SQL 命令可分为数据定义语言、数据操纵语言、事务控制语言和数据控制语言
Oracle 支持的数据类型包括字符、数值、日期时间、RAW 和 LOB 等
伪列:ROWID、ROWNUM
数据完整性:实体完整性、域完整性、引用完整性、自定义完整性
CREATE TABLESPACE tablespacename
DATAFILE ‘filename’ [SIZE integer [K|M]]
[AUTOEXTEND [OFF|ON]];
开始运行输入services.msc
找到OracleService........右键菜单点击启动
找到Oracle.......Listener右键菜单点击启动
开始运行输入cmd
输入net start OracleService........
输入lsnrctl start
创建新用户
CREATE USER MARTIN
IDENTIFIED BY martinpwd
GRANT
命令可用于为用户分配权限或角色
GRANT CONNECT,RESOURCE,CREATE TO MARTIN;
授予用户 MARTIN 操作TEST表对象的权限
GRANT SELECT ON TEST TO MARTIN;
GRANT UPDATE ON TEST TO MARTIN;
GRANT ALL ON TEST TO MARTIN;
ALTER USER 命令可用于更改口令
ALTER USER MARTIN IDENTIFIED BY martinpass;
DROP USER 命令用于删除用户
DROP USER MARTIN CASCADE;
数据定义语言(DDL)create alter drop
数据操纵语言(DML)insert select delect update
事务控制语言(TCL)commit savepoint rollback
数据控制语言(DCL)grant revoke
数据类
字符 数值 日期时间 RAW/LONG RAW LOB
字符数据:CHAR VARCHAR2 LONG
数值数据:NUMBER[(p[,s])]
日期时间数据:DATE TIMESTAMP
RAW 数据类型用于存储二进制数据
RAW 数据类型最多能存储 2000 字节
LONG RAW 数据类型用于存储可变长度的二进制数据
LONG RAW 数据类型最多能存储 2 GB
LOB 称为“大对象”数据类型,可以存储多达 4GB 的非结构化信息,例如声音剪辑和视频文件等
LOB 数据类型允许对数据进行高效、随机、分段的访问
Oracle 中伪列就像一个表列,但是它并没有存储在表中
伪列可以从表中查询,但不能插入、更新和删除它们的值
常用的伪列有ROWID和ROWNUM
ROWID 是表中行的存储地址,该地址可以唯一地标识数据库中的一行,可以使用 ROWID 伪列快速地定位表中的一行
ROWNUM 是查询返回的结果集中行的序号,可以使用它来限制查询返回的行数
数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象
用于操纵表结构的数据定义语言命令有:
CREATE TABLE
ALTER TABLE
TRUNCATE TABLE
DROP TABLE
DDL – Create Table命令
创建表
语法:
CREAT TABLE SQL 模式名.基本表名
(列名,类型,
……
完整性约束...);
注:完整性约束包括主键子句(PRIMARY KEY)、检查子句(CHECK)和外键子句(Foreign KEY)。
SQL> CREATE TABLE martin.t_stu (
f_id char(3) NOT NULL Primary Key,
f_name char(8) NOT NULL ,
f_sex char(1) NOT NULL ,
f_birth date NULL ,
f_department char(5) NULL ,
);
DDL – Alter Table命令
基本表结构的修改:
ALTER TABLE 基本表名 ADD/MODIFY/DROP (增加/修改/删除) 列名 类型名(增加/修改时写出)或增加/修改/删除 约束
SQL> ALTER TABLE t_stu Add f_class int;
SQL> ALTER TABLE t_stu Modify f_class char(2);
SQL> ALTER TABLE t_stu Drop column f_class;
SQL> ALTER TABLE t_stu Add constraint cons_name Unique(f_name);
DDL – 撤销及截断命令
基本表的撤消:
DROP TABLE 基本表名
SQL> DROP TABLE t_stu;
基本表的截断:
Truncate TABLE 基本表名
注:截断表是将表中所有记录删除,但保留表结构,并且不写日志
VS Delete from 基本表名
SQL> TRUNCATE TABLE t_stu;
约束方法:唯一约束、主键约束
约束方法:限制数据类型、检查约束、外键约束、默认值、非空约束
约束方法:外键约束
约束方法:规则、存储过程、触发器
数据操纵语言
数据操纵语言用于检索、插入和修改数据
数据操纵语言是最常见的SQL命令
数据操纵语言命令包括:
SELECT
INSERT
UPDATE
DELETE
DML – INSERT 命令
基本表数据的插入:
INSERT INTO 基本表名[(columns_list)] VALUES(values_list)
插入日期类型的值
日期数据类型的默认格式为“DD-MON-YY”
使用日期的默认格式
使用TO_DATE函数转换
INSERT INTO t_student
VALUES('013', 'Peter', 'm', '25-5月-84', 'CS',1);
INSERT INTO t_student(f_id,f_name,f_sex,f_birth)
VALUES (‘014’,‘Mary’,‘f’,TO_DATE(’85/10/18', 'YY/MM/DD'));
插入来自其它表中的记录
语法:
INSERT INTO <table_name> [(cloumn_list)]
SELECT column_names FROM <other_table_name>;
SQL> CREATE TABLE t_stutemp AS
SELECT * FROM t_student WHERE 1=2;
SQL> INSERT INTO t_stutemp
SELECT * FROM t_student WHERE f_class=1;
SQL> INSERT INTO t_stutem(f_id,f_name,f_sex)
SELECT f_id, f_name, f_sex FROM t_student
WHERE f_class=2;
数据控制语言
数据控制语言为用户提供权限控制命令
用于权限控制的命令有:
GRANT 授予权限
REVOKE 撤销已授予的权限
SQL> GRANT SELECT ON t_student
TO scott WITH GRANT OPTION;
SQL> REVOKE SELECT, UPDATE ON t_student
FROM MARTIN;
总结
SQL 是通用的数据库语言
SQL 命令可分为数据定义语言、数据操纵语言、事务控制语言和数据控制语言
Oracle 支持的数据类型包括字符、数值、日期时间、RAW 和 LOB 等
伪列:ROWID、ROWNUM
数据完整性:实体完整性、域完整性、引用完整性、自定义完整性