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;