1、基本概念
- SQL(Structured Query Language)结构化查询语言:一种对数据库进行操作的语言。
- DBMS:数据库管理系统。
- MySQL:一个数据库管理系统。
- 约束值:通过对表的行或列的数据做出限制,来确保表中数据的完整性、唯一性。常用的有主键(PRIMARY KEY)、默认值(DEFAULT)、唯一值(UNIQUE)、外键(FOREIGNKEY)、非空(NOT NULL)。
- 索引:一种与表有关的结构,可加快查询的速度,相当于根据书目录中的页码快速找到所需的内容。
- 视图:一种虚拟存在的表,通过视图用户可以不用看到整个数据库中的数据,而只关心对自己有用的数据。
2、基本语句
# 安装服务端及核心程序
$ sudo apt-get install mysql-server
# 安装客户端
$ sudo apt-get install mysql-client # 打开mysql服务
$ sudo service mysql start # 使用root用户登陆
$ mysql -u root # 创建数据库
mysql > CREATE DATABASE corp_information;
# 查看数据库
mysql > SHOW DATABASE; # 连接数据库
mysql > USE corp_information; # 新建表
mysql > CREATE TABLE department(dpt_name CHAR(20),dpt_phone INI(12)); # 显示数据库中的表
mysql > SHOW TABLES; # 查看表内容
mysql > SELECT * FROM employee; # 查找数据
mysql > SELECT name,age FROM employee WHERE age < 25 OR age > 30; # 插入数据
mysql > INSERT INTO employee(id,name,phone) VALUE(01,'Tom',10011); # 增加一列
mysql > ALTER TABLE employee ADD height INT(4) DEFAULT 170; # 修改表中某个值
mysql > UPDATE employee SET age=21,salary=3000 WHERE name='Tom'; # 删除一行
mysql > DELETE FROM employee WHERE name='Tom'; # 建立索引
mysql > CREATE INDEX idx_name ON employee(name); # 建立视图
mysql > CREATE VIEW v_tmp(v_name,v_age,v_phone) AS SELECT name,age,phone FROM employee; # 将外部文件数据导入数据库
mysql > LOAD DATA INFILE '/home/data.txt' INTO TABLE employee; # 将数据库数据导出到外部文件
mysql > SELECT * INTO OUTFILE '/home/data.txt' FROM employee; # 备份数据库
$ mysqldump -u root corp_information > bak.sql # 恢复数据库
$ source /home/corp_information.sql # 删除数据库
mysql > DROP DATABASE corp_information; # 退出(或EXIT,ctrl+z)
mysql > QUIT;