常用数据库知识(一)
来源:互联网 发布:mysql server 5.5安装 编辑:程序博客网 时间:2024/04/30 19:11
SQL:结构化查询语言,是与数据库沟通的语言,用于操作数据库。SQL益于标准,所有的数据库管理系统都支持该标准。
DDL语句,数据定义语句,用于维护数据库对象,数据库对象包括:表、视图、序列、索引
创建表 :CREATE TABLE employee_lst(
id NUMBER(4),
name VARCHAR2(20),
gender CHAR(1),
birth DATE,
salary NUMBER(6,2),
job VARCHAR2(30),
deptno NUMBER(2)
)
查看表结构 :DESC employee_lst
删除表格 : DROP TABLE employee_lst
SQL语句本身是不区分大小写的,但是字符串的值是区分大小写的,字符串的字面量在数据库中是使用单引号括起来的
数据库中所有数据类型的默认值都是NULL,可以用DEFAULT关键字为字段指定默认值当向一张表插入数据时,某字段不
给值时会使用默认值作为该字段的值。
CREATE TABLE employee_lst(
id NUMBER(4),
name VARCHAR2(20),
gender CHAR(1) DEFAULT 'M',
birth DATE,
salary NUMBER(6,2) DEFAULT 7000,
job VARCHAR2(30),
deptno NUMBER(2)
)
NOT NULL约束
当一个字段使用NOT NULL约束后,该字段的值任何情况下不允许为空
CREATE TABLE employee_lst(
id NUMBER(4),
name VARCHAR2(20) NOT NULL,
gender CHAR(1) DEFAULT 'M',
birth DATE,
salary NUMBER(6,2),
job VARCHAR2(30),
deptno NUMBER(2)
)
修改表
1.修改表名
2.修改表结构
1.修改表名: RENAME old_name TO new_name
2.修改表结构
2.1:添加新字段
2.2:修改现有字段
2.3:删除现有字段
2.1:添加新字段
向employee_lst表中添加入职时间
ALTER TABLE employee_lst
ADD(
hirdate DATE
)
DESC employee_lst
2.2:修改现有字段
可以修改字段的类型,长度,添加默认值或非空约束
修改字段最好在表中没有数据的时候进行,否则尽量
不修改类型,长度只增不减,否则可能导致修改失败
将JOB字段的长度改为40
ALTER TABLE employee_lst
MODIFY(
job VARCHAR(40)
)
DESC employee_lst
2.3:删除字段
删除hirdate字段
ALTER TABLE employee_lst
DROP(hirdate)
DML:数据操作语句
DML是用在增删改表中数据的
INSERT INTO employee_lst
(id,name,job,deptno)
VALUES
(1,'JACK','MANAGER',10)
COMMIT
SELECT * FROM employee_lst
全列插入可以不指定字段
INSERT INTO employee_lst VALUES(1,'rose','d',SYSDATE,7000,'JACK',10)
COMMIT
插入日期数据时,使用TO_DATE函数
INSERT INTO employee_lst
(id,name,birth,deptno)
VALUES
(3,'suwei',TO_DATE('1888-08-08','YYYY-MM-DD'),15)
COMMIT
SELECT * FROM employee_lst
2:修改数据
UPDATE语句
修改的时候通常要添加WHERE,这样只会将表中满足WHERE条件的记录进行修改,否则是全表数据修改
UPDATE employee_lst
SET salary=4000,deptno=20
WHERE name='rose'
SELECT * FROM employee_lst
3:删除数据
DELETE语句
不添加WHERE子句是清空表操作
DELETE FROM employee_lst
WHERE gender='M'
SELECT * FROM employee_lst
DDL语句,数据定义语句,用于维护数据库对象,数据库对象包括:表、视图、序列、索引
创建表 :CREATE TABLE employee_lst(
id NUMBER(4),
name VARCHAR2(20),
gender CHAR(1),
birth DATE,
salary NUMBER(6,2),
job VARCHAR2(30),
deptno NUMBER(2)
)
查看表结构 :DESC employee_lst
删除表格 : DROP TABLE employee_lst
SQL语句本身是不区分大小写的,但是字符串的值是区分大小写的,字符串的字面量在数据库中是使用单引号括起来的
数据库中所有数据类型的默认值都是NULL,可以用DEFAULT关键字为字段指定默认值当向一张表插入数据时,某字段不
给值时会使用默认值作为该字段的值。
CREATE TABLE employee_lst(
id NUMBER(4),
name VARCHAR2(20),
gender CHAR(1) DEFAULT 'M',
birth DATE,
salary NUMBER(6,2) DEFAULT 7000,
job VARCHAR2(30),
deptno NUMBER(2)
)
NOT NULL约束
当一个字段使用NOT NULL约束后,该字段的值任何情况下不允许为空
CREATE TABLE employee_lst(
id NUMBER(4),
name VARCHAR2(20) NOT NULL,
gender CHAR(1) DEFAULT 'M',
birth DATE,
salary NUMBER(6,2),
job VARCHAR2(30),
deptno NUMBER(2)
)
修改表
1.修改表名
2.修改表结构
1.修改表名: RENAME old_name TO new_name
2.修改表结构
2.1:添加新字段
2.2:修改现有字段
2.3:删除现有字段
2.1:添加新字段
向employee_lst表中添加入职时间
ALTER TABLE employee_lst
ADD(
hirdate DATE
)
DESC employee_lst
2.2:修改现有字段
可以修改字段的类型,长度,添加默认值或非空约束
修改字段最好在表中没有数据的时候进行,否则尽量
不修改类型,长度只增不减,否则可能导致修改失败
将JOB字段的长度改为40
ALTER TABLE employee_lst
MODIFY(
job VARCHAR(40)
)
DESC employee_lst
2.3:删除字段
删除hirdate字段
ALTER TABLE employee_lst
DROP(hirdate)
DML:数据操作语句
DML是用在增删改表中数据的
INSERT INTO employee_lst
(id,name,job,deptno)
VALUES
(1,'JACK','MANAGER',10)
COMMIT
SELECT * FROM employee_lst
全列插入可以不指定字段
INSERT INTO employee_lst VALUES(1,'rose','d',SYSDATE,7000,'JACK',10)
COMMIT
插入日期数据时,使用TO_DATE函数
INSERT INTO employee_lst
(id,name,birth,deptno)
VALUES
(3,'suwei',TO_DATE('1888-08-08','YYYY-MM-DD'),15)
COMMIT
SELECT * FROM employee_lst
2:修改数据
UPDATE语句
修改的时候通常要添加WHERE,这样只会将表中满足WHERE条件的记录进行修改,否则是全表数据修改
UPDATE employee_lst
SET salary=4000,deptno=20
WHERE name='rose'
SELECT * FROM employee_lst
3:删除数据
DELETE语句
不添加WHERE子句是清空表操作
DELETE FROM employee_lst
WHERE gender='M'
SELECT * FROM employee_lst
阅读全文
1 0
- 常用数据库知识(一)
- 常用数据库知识(二)
- 常用数据库知识(四)
- 常用数据库知识(五)
- 数据库知识整理(一)
- 常用的数据库知识(三)
- 数据库常用知识补充
- 数据库常用知识总结
- MySQL 常用知识积累(一)
- 【Java基础】常用知识积累(一)
- 常用的方法、知识(一)
- JAVA常用多线程知识大全(一)
- SQL Server数据库相关知识(一)
- 数据库开发知识总结(一)
- 一 数据库基本理论知识
- 数据库常用相关(一)
- 数据库的一些常用知识
- 数据库的一些常用知识
- JAVA高级工程师课程笔记整理——(六)网页三剑客
- 配置 Pycharm 默认 Test runner 的方法
- 关于Java中尾递归的优化
- 项目部署环境的问题 Errors occurred during the build
- Linux/Android——input子系统核心 (三)
- 常用数据库知识(一)
- java junit测试
- String创建对象问题
- 2017年5月14日青岛卫计委笔试真题解析---综合类(考生回忆版)
- 线性代数中轴相关问题
- 欢迎使用CSDN-markdown编辑器
- #leetcode#179. Largest Number
- Java多线程知识总结
- [leetcode]: 35. Search Insert Position