数据库对象
数据库对象是数据库里定义的、用于储存或是引用数据的对象。有 表、视图、簇、序列、索引、异名。
表:最主要的储存数据方式
- 列
可以被设置为NULL 或者NOT NULL,当为 NOT NULL 时,表示列中必须包含数据
- 行
创建表
CREATE TABLE table_name
( field1 date_type null/not ,
field2 date_type null/not);
修改表
- 修改表的元素
ALTER TABLE My_table MODIFY
the_field date_type;
- 添加自动增加的列
CREATE TABLE TEST_INC(
ID SERIAL,
TEST_NAME VARCHAR(10));
INSERT INTO TEST_INC(TEST_NAME)
VALUES ('A'),('B'),('C'),('D');
SELECT * FROM TEST_INCREMENT;
从现有表新建另一个表
create table new_table_name as
select [ *|column1, column2 ]
from table_name
[where]
'*'表示表里一行完整数据,也就是一条完整记录
删除表
drop table teble_name [ restrict|cascade ]
完整性约束
完整性约束用于确定关系型数据库里数据的准确性和一致性。
- 主键约束
CREATE TABLE table_name
( field1 date_type null/not ,
field2 date_type null/not
PRIMARY KEY (field1));
OR
CREATE TABLE table_name
( field1 date_type null/not PRIMARY KEY ,
field2 date_type null/not);
- 唯一性约束
CREATE TABLE table_name
( field1 date_type null/not UNIQUE,
field2 date_type null/not);
- 外键约束
alter table employee_pay_tbl
add constraint (the_name)_fk foreign key (emp_id)
references employee_tbl (emp_id);
- NOT NULL约束
ALTER TABLE EMPOYEE_TBL
MODIFY MIDDLE_NAME VARCHAR(20), NUT NULL;
- 检查约束
CONSTRAINT CHEK_ID CHEK((BC_ITEM > 3.14));
CONSTRAINT CHEK_ID CHEK (BC_ITEM IN ('W1','W2','W3'));
-去除约束
ALTER TABLE EMPLOYEES DROP PRIMARY KEY;
- 添加自动增量字段
ALTER TABLE EMPLOYEE_TBL
ADD COLUMN (NAME) INT AUTO_INCREMENT;