MySQL数据库安装好之后,首先启动服务器进程,然后客户端登录数据库。
(一)数据库登录
(1)首先启动MySQL服务
方法:使用【win+R】按键组合,打开命令行窗口,然后输入“net start mysql”命令,回车。
停止MySQL服务的命令为:“net stop mysql”。
(2)登录MySQL数据库
DOS窗口下连接MySQL的命令格式为:
mysql -h hostname -u username -p
//mysql:登录命令
//-h 后面的参数是服务器的主机地址,如果使用个人计算机,一般客户端和服务器在同一太机器上,所以输入localhost或者IP地址127.0.0.1
//-u 后面跟登录数据库的用户名称,这里为root
//-p 后面是用户登录密码
方法:打开命令行窗口,输入连接命令:mysql -h localhost -u root -p,回车,
系统提示【Enter password:】,输入密码,验证成功后即可登录到MySQL数据库。
(二)数据库的基本操作
(1)首先创建数据库
基本SQL语法格式:CREATE DATABASE database_name;
database_name为要创建的数据库名,该名不能与已存在的数据库重名。
查看当前已存在的所有数据库的SQL语句为:SHOW DATABASES;
举例:CREATE DATABASE test_db;
(2)删除数据库
基本SQL语法格式:DROP DATABASE database_name;
举例:DROP DATABASE test_db;
(3)选择当前数据库
基本SQL语法格式:USE database_name;
举例:USE test_db;
(4)查看数据库信息
基本SQL语法格式:SHOW CREATE DATABASE database_name\G;
举例:SHOW CREATE DATABASE test_db\G;
(三)数据表的基本操作
(1)创建数据表
CREATE TABLE <表名>
(
字段1, 数据类型 [列级别约束条件][默认值],
字段2, 数据类型 [列级别约束条件][默认值],
……
);
//<> 中的值表示必须存在
//[] 中的值表示可有可无
举例:
(1)首先选择创建表的数据库: USE test_db;
(2)创建 tb_emp1 表:
CREATE TABLE tb_emp1
(
id INT(11) PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(25) NOT NULL UNIQUE,
depId INT(11) DEFAULT 1111,
salary FLOAT
);
创建外键约束的语法规则:
[CONSTRIANT <外键名>]FOREIGN KEY 字段名1[,字段名2,……] REFERENCES <主表名> 主键列1[,主键列2,……]
例子:
CREATE TABLE tb_dept1
(
id INT(11) PRIMARY KEY,
name VARCHAR(22) NOT NULL,
location VARCHAR(50)
);
CREATE TABLE tb_emp5
(
id INT(11) PRIMARY KEY,
name VARCHAR(25),
depId INT(11),
salary FLOAT,
CONSTRAIANT fk_emp_dept1 FOREIGN KEY(deptId) REFERENCE sb_dept1(id)
);
(2)查看数据表结构
(1)查看表基本结构
语法规则:DESCRIBE 表名;(或者简写为:DESC 表名;)
举例:DESC tb_emp1;
(2)查看表详细结构
语法规则:SHOW CREATE TABLE <表名\G>;(加“\G”参数,可使显示结果更加直观)
举例:SHOW CREATE TABLE tb_emp1;
(3)修改数据表
- 修改表名
语法规则:ALTER TABLE <旧表名> RENAME [TO] <新表名>;
举例:ALTER TABLE tb_dept3 RENAME tb_deptment3;
- 修改字段数据类型
语法规则:ALTER TABLE <表名> MODIFY <字段名> <数据类型>;
举例:ALTER TABLE tb_dept1 MODIFY name VARCHAR();
- 修改字段名
语法规则:ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>;
举例:ALTER TABLE tb_dept1 CHANGE location loc VARCHAR();
- 添加字段
语法规则:ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件][FIRST][AFTER已存在字段名];
举例:
1、无约束条件:ALTER TABLE tb_dept1 ADD managerId INT();
2、有约束条件:ALTER TABLE tb_dept1 ADD column1 VARCHAR() NOT NULL;
3、在第一列添加:ALTER TABLE tb_dept1 ADD column2 INT() FIRST;
4、在指定列添加:ALTER TABLE tb_dept1 ADD column3 INT() AFTER name;
- 删除字段
语法规则:ALTER TABLE <表名> DROP <字段名>;
举例:ALTER TABLE tb_dept1 DROP colum2;
- 修改字段的排列位置
语法规则:ALTER TABLE <表名> MODIFY <字段> <数据类型> FIRST/AFTER <字段>;
举例:ALTER TABLE tb_dept1 MODIFY column1 VARCHAR() FIRST;
- 更改表的存储引擎
语法规则:ALTER TABLE <表名> ENGINE=<更改后的存储引擎名>;
举例:ALTER TABLE tb_deptment3 ENGINE=MyISAM;
- 删除表的外键约束
语法规则:ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;
举例:ALTER TABLE tb_emp9 DROP FOREIGN KEY fk_emp_dept;
(4)删除数据表
(1)删除没有被关联的表
语法规则:DROP TABLE [IF EXISTS] 表,表,……表n;
举例:DROP TABLE IF EXISTS tb_dept2;
(2)删除被其他表关联的主表
语法规则(步骤):
1、解除关联子表的约束条件;
2、删除该表。
举例:删除被数据表tb_emp关联的数据表tb_dept2
1、ALTER TABLE tb_emp DROP FOREIGN KEY fk_emp_dept;
2、DROP TABLE tb_dept2;