DDL数据定义语言
DDL是对数据库进行操作的语言。数据库对象包括:表,视图,索引,序列。
创建表
CREATE TABLE employee(
id NUMBER(4),
name VARCHAR2(20);
gender CHAR(1),
birth DATE,
salary NUMBER(6,2),
job VARCHAR2(30)
);
删除表
DROP TABLE employee;
数据库中所有数据类型的默认值都是null,在创建表时可以使用DEFAULT为某个字段单独指定一个默认值。
数据库中的字符串字面量是使用单引号的,虽然SQL语句本身不区分大小写,但字符串的值是区分大小写的。
CREATE TABLE employee(
id NUMBER(4),
name VARCHAR2(20) NOT NULL;
gender CHAR(1) DEFAULT 'M',
birth DATE,
salary NUMBER(6,2) DEFAULT 3000,
job VARCHAR2(30)
);
修改表
1,修改表名
RENAME mployee TO myemp;
DESC myemp;
2,修改表结构
添加新的字段
ALTER TABLE myemp
ADD(hiredate DATE DEFAULT SYSDATE);
DESC myemp;
修改现有字段(字段名不能改)
可以修改字段的类型,长度,默认值,是否非空
修改表结构都应避免在表中有数据以后进行,若表中有数据,修改表中字段时尽量不要修改类型,若修改长度应尽量增大避免缩小
ALTER TABLE myemp
MODIFY(
job VARCHAR2(40) DEFAULT 'CLERK'
);
DESC myemp;
删除现有字段
ALTER TABLE myemp
DROP(hiredate);
DESC myemp;
TRUNCATE 删除表数据,保留表结构(没有事务控制)
TRUNCATE TABLE myemp;
DML语句
DML是对表中数据进行的操作
DML伴随事务控制
DML包含增删改操作
INSERT语句
向表中插入数据
INSERT INTO myemp(id,name,salary)
VALUES
(1,'jack',5000);
COMMIT;
SELECT * FROM myemp;
使用自定义日期格式插入记录
INSERT INTO myemp
(id,name,job,birth)
VALUES
(1003,'lina', 'MANAGER'TO_DATE('2009-09-01','YYYY-MM-DD')
);
UPDATE 语句
修改表中数据
UPDATE myemp
SET salary=5000
WHERE id=1;
DELETE 语句
删除表中数据,删除数据通常也要添加WHERE来限定,否则就是清空表操作
DELETE FROM myemp
WHERE name='jack';