MySQL管理工具
MySQL管理工具
安装之后,默认安装了mysql Commcand line Client,这个工具是一个命令行形式,通常安装可视化的DBMS工具:Navicat
- mysql Commcand line Client简单使用
开始菜单打开mysql Commcand line Client,与MySQL的链接只需要输入密码 - Navicat可视化工具
MySQL的逻辑结构
mysql可以存储数据,但是存储在mysql中的数据需要按照特定的结构和格式进行存储,如下面的院校结构

当有数据需要存到mysql中去时,不能够直接将数据存到里面,就如同学生不是直接隶属于学校一样
存储步骤:
- 1.在mysql数据库软件中创建数据库
![]()
这就是系统数据库,有多个类型 - 2.创建数据表table,一个数据库可以创建多个数据表
- 3.一个数据表可以创建多个字段,字段中存放着数据
存储在同一行的不同字段的数据,称为一条记录,也称为元组
SQL
创建数据库----创建数据表(生命字段)----存放数据
SQL概述
SQL(Structured Query Language)结构化查询语言,用于存取、查询、更新数据以及管理关系型数据库系统
向数据传达操作指令的语法
SQL分类
根据sql指令完成的数据库操作的不同,可以将sql指令分为四类:
- 1.DDL(Data Definition Language)数据定义语言
用于完成对数据库对象(数据库、数据表、视图、索引等)进行管理,包括创建、删除、修改 - 2.DML(Data Manipulation Language)数据操作(操纵)语言
用于完成对数据表中的数据进行添加、删除、修改操作
添加:将数据存储到数据表
删除:将数据从数据表中移除
修改:对数据表中的数据进行修改 - 3.DQL(Data Query Language)数据查询语言
用于将数据表中的数据查询出来 - 4.DQL(Data Control Language)数据控制语言
用于完成数据管理等控制性操作
SQL的基本语法
在MySQL中的命令行、navicat中都可以编写SQL指令
- 1.不区分大小写
- 2.每条sql指令结束都已“;”结束
- 3.sql关键字之间以空格进行分隔;如,show databases;指令,show与datavases之间就有空格隔开
- 4.SQL之间不限制换行
- 5.向上键可以查看之前输入过的指令
DDL(Data Definition Language)数据定义语言
用于完成对数据库对象(数据库、数据表、视图、索引等)进行管理,包括创建、删除、修改
DDL-数据库操作
使用DDL语句可以来创建、查询、修改、删除数据库
-
创建数据库
create database 数据库名;即可创建
![]()
-
查询数据库
1.show databases;(显示所有数据库列表)
![]()
前面创建的数据库显示出来了,在navicay中也可以查到
![]()
注意,不能重复创建同名数据库,否则报错
![]()
所以为了避免报错,可以利用语句create database if not exists db_test;(如果数据库db_test不存在,就创建这样一个数据库)判断数据库名是否存在,存在不创建;不存在就创建
![]()
2.查询指定数据库语法
show create database db_test;
![]()
-
指定字符集(因为一般默认的字符集不编译中文)
字符集:数据存储在数据库中采用的编码格式
create database db_test character set utf8;指定创建数据库是按照什么样的字符集(编码格式)进行编码
utf8、gbk都是支持中文的 -
修改数据库(主要指的是修改数据库的字符集)
关键字alter(修改)
语句:alter database db_test character set gbk;
![]()
再查询来验证一下
![]()
修改成功 -
删除数据库
删除数据库的同时会删除数据库中所有的表和数据
现在把表db_ttt删掉
![]()
关键字:drop
语句:drop database db_ttt;

验证

删除成功
当数据库不存在的时候不予执行删除并报错,防止报错采用语句:drop database if exists db_ttt;
- 使用/切换数据库
关键字:use
当需要创建表时,首先要进入到一个数据库当中,就用use进入
语句:use db_test;
而后进行创建表的操作。如果需要换一个数据库进行建表,依然使用use db_test02;即可
DDL-对数据表的操作
创建数据表
数据表实际上就是一个二维的数据表格,是由多列组成的,表中的一个列称为表的一个字段(元组)
创建方式:
create table
create table students(stu_num,stu_name,stu_gender,stu_age,stu_tel,stu_qq);(注意:sql中不区分大小写,单词之间没有驼峰规则,利用下划线来划分单词)
为了美观,利用sql中可以换行的规则,合理排版:
create table students(
stu_num,
stu_name,
stu_gender,
stu_age,
stu_tel,
stu_qq
);
而目前的语句是不完整的,我们需要在每一个字段后面声明其数据类型,如下:
create table students(
stu_num char(8) not null unique,
stu_name varchar(20) not null,
stu_gender char(2) not null,
stu_age int not null,
stu_tel char(11) not null unique,
stu_qq varchar(11) unique
);
- char是定长字符串,适用于学号这一类的数据,长度一直都是不变的字符串,当规定好字段长度时,如果数据长度不够,系统自动补齐,但不能超过这个规定的长度
- varchar是非定长字符串,适用于名字这一类不定长度的字符串。(注意:一个汉字占两个字符)
- not null,代表这个字段的数据必须填写不得为空
- unique,代表这个字段的数据不可以重复
现在在命令行当中创建这个表,注意,创建表的时候,要先指明在那个数据库当中建立,即是用use <数据库名>;语句来声明使用哪个数据库

创建完成,在db_test数据库中,创建一个名为students的表
查看数据表
- 查看表:show tables
![]()
查看数据表结构
- 查看表的结构:desc <表名>;例如,desc students;
![]()
Field表示字段的意思
删除数据表
- 删除表:drop table <表名>;例如,drop table students;
同样为了避免报错,我们使用语句drop table if exists students;
![]()
查看验证:
![]()
成功删除
修改数据表
修改数据表名
语句:alter table <表名> rename to <新表名>;例如,alter table students rename to stus;
意思是,修改students表的表名为stus;其中rename是重命名的意思

查看验证:

修改成功
修改字符集
- 数据表也有字符集的属性,默认与数据库保持一致
语句:alter table <表名> character set <字符集类型>;例如,alter table students character set utf8;
添加字段(列)
语句:alter <表名> stus add <新字段名> <数据类型>(<规定长度>);例如,alter table stus add stu_remark varchar(200);增加一个名为stu_remark的字段,数据类型为varchar字符长度为200(100字的自我介绍)


添加成功
修改字段数据类型
语句:alter table <表名> change <字段名> <新字段名> <新数据类型>;例如,alter table stus change stu_remark stu_desc text;将表stus中的stu_remark字段的字段名修改为stu_desc,数据类型修改为text
修改字段的数据类型与字段名


- 只修改字段数据类型
alter table <表名> modify <字段名> <新数据类型>;例如,alter table stus modify stu_desc vaechar(400);
删除字段(字段在表中,删除字段而表还在,所以这是一种修改)
语句:alter table <表名> drop <字段名>;例如,alter table stus drop stu_desc;删除stus表中的stu_desc字段















浙公网安备 33010602011771号