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;