入门基础内容
创建用户并给默认表空间
CREATE USER bswaterb IDENTIFIED BY bsbs DEFAULT TABLESPACE USERS;
--创建用户名为bswaterb,口令(密码)为bsbs 的账户,默认表空间是USERS
授予用户权限
--授予用户 CONNECT 角色,这是用户连接数据库的基础
GRANT CONNECT TO bswaterb;
--授予用户 RESOURCE 角色
GRANT RESOURCE TO bswaterb;
--授予用户 DBA(管理员) 角色
GRANT DBA TO bswaterb;
登录命令
--输入命令后需要根据提示输入密码
CONNECT bswaterb;
CONN bswaterb;
创建表
CREATE TABLE schema_name.table_name(
column_1_name datatype [column_level_constraint],
column_2_name datatype [column_level_constraint],
...
[table_level_constraint]
)
[parameter_list];
实例:创建一个 employee 表
CREATE TABLE employee(
empno NUMBER(5) PRIMARY KEY,
ename VARCHAR2(15),
deptno NUMBER(3) NOT NULL
)
TABLESPACE USERS;
向表中插入数据
INSERT INTO table_name VALUES(data);
实例:向 employee 表中插入一条数据
INSERT INTO employee VALUES(1,'张三',114);
修改表中的数据
UPDATE
table_name
SET
column1 = value1,
column2 = value2,
column3 = value3,
...
WHERE
condition;
实例:修改 employee 表中 ename 为 张三 的 deptno 值
UPDATE employee
SET deptno = 514
WHERE ename = '张三'
删除表中数据
DELETE
FROM
table_name
WHERE
condition;
实例:删除 employee 表中 empno 为 1 的记录
DELETE FROM employee
WHERE empno = 1;
查询数据
-- 查询 employee 所有列
SELECT * FROM employee;
-- 查询 employee 的 empno 和 ename 列
SELECT empno,ename FROM employee;
-- 查询中使用算式表达式
SELECT ename,deptno+114400 FROM employee;
-- 查询中使用字符常量
SELECT empno,'Name is:',ename FROM employee;
数据类型
- 字符型
- 数值类型
- 日期类型
- LOB类型
- 二进制类型
- 行类型
字符类型
CHAR(n) 定长字符串,n取值为1-2000字节
VARCHAR2(n) 可变字符串,n取值为1-4000字节,可自动调整数据长度
NCHAR(n) 定长Unicode类型字符串
NVARCHAR2(n) 变长 Unicode 字符串
LONG 可变长字符列,最大长度为2GB,不常用
数值类型
NUMBER(m,n) 存储整数和实数,m表示数值总位数(范围1~38,默认38),n表示小数位数(默认0)
INTEGER NUMBER子类型,等同于NUMBER(38,0),用来存储整数
BINARY_FLOAT 32位,单精度浮点数
BINARY_DOUBLE 64位,双精度浮点数
FLOAT(n) NUMBER子类型,n 指示位的精度,可以存储的值的数目
日期类型
DATE 范围从公元前4712年1月1日到公元4712年1月1日,由世纪、年、月、日、时、分、秒组成
TIMESTAMP[(n)] 表示时间戳,DATE类型的扩展,允许存储小数形式的秒数,n表示秒的小数位数,范围位1-9,默认值为6
LOB类型
CLOB 用于存储可变长度的字符数据,如文本文档等,最大数据量为4GB
NCLOB 用于存储可变长度的Unicode字符数据,最大数据量为4GB
BLOB 用于存储大型的、未被结构化的可变长度的二进制数据,最大数据量为4GB
BFILE 用于存储指向二进制格式文件的定位器,文件最大为4GB
二进制类型
RAW(n) 用于存储可变长度的二进制数据,n表数据长度,范围为1-2000字节
LONG RAW 用于存储可变长度的二进制数据,最大存储数据量为2GB
行类型
ROWID 行标识符,表中行的物理地址的伪列类型
UROWID 行标识符,用于表示索引化表中行的逻辑地址
Comments NOTHING