-----主要内容----
1)建表
2)管理表(新增、修改、删除列)
3)操作相关的具体数据
4)约束
---------1.建表---------------
/*
语法:
CREATE TABLE [schema.]table
(column1 datatype [DEFAULT expr],
column2 datatype [DEFAULT expr]s
[, ...]);
关键字:
CREATE:新建
TABLE:表
column1:具体的列名,多个列之间使用逗号隔开,最后一个列不需要逗号
datatype:具体的数据类型
DEFAULT: 是否有默认值
命名规则和规范:
规则:规则强制性,必须遵守,否则报错。
1)只能是字母、数字或者_$, 和 #组成
2)字母和下划线开头
3)名字不能重复
4)不能使用关键字,但是可以包含关键字
规范:行业规范,公司规范
1)多个单词使用下划线分开 last_name
2)公司要求使用 驼峰命名
大驼峰:所有单词首字母 都是大写 LastName
小驼峰: 首个单词的首字母小写,其余单词首字母大写 lastName
数据类型:
作用:为了存储不同格式的数据,来满足业务需求2
字符型:
char: 固定长度字符串
特点:存储速度快,固定长度 适合存放固定长度的数据:例如 性别
varchar2 :可变字符,oracle对varcahr进行升级版
特点:适合存放长度不固定的值,也是oracle中最常用的类型
数值型:
number :存储的是数值类型,可以是整数 也可以是小数
number(5,2) : 总长度是5,包含两个小数。最大数:999.99
日期型:
date :存放的是日期。注意:日期不用指定长度
*/
CREATE TABLE student(
sno VARCHAR2(16),
sname VARCHAR2(16),
ssex CHAR(2),
sbirthday DATE,
class VARCHAR2(10) -- 最后一个不需要逗号
);
SELECT * FROM student;
-- 查询表结构:推荐使用 命令窗口去查询
-- DESC 加上需要查询的表名
-- desc student; -- 写完 回车
-------通过查询的方式创建表------------
/*
语法:CREATE TABLE table
[(column, column...)]
AS subquery;
注意:
1)通过SELECT去创建表,必须先有一个参照表
2)查询出来的结果有多少列,新表就有多少列
*/
CREATE TABLE emp_new
AS
SELECT employee_id id ,last_name ename ,email,job_id,salary
FROM employees
WHERE 1=2; -- 只要表结构,不需要数据
CREATE TABLE emp_new2
AS
SELECT employee_id id ,last_name ename ,email,job_id,salary
FROM employees
WHERE 1=1; -- 表结构和数据 全部拿过来了
--------