1、mysql启动与登陆退出
1.1、启动与停止mysql
-
用管理员身份打开cmd,然后通过命令进行管理
net start mysql //开启服务
net stop mysql //关闭服务
-
右键我的电脑,点击管理,找到Mysql进行开启与关闭
-
通过命令行:services.msc,进入到上面的界面,找到Mysql进行开启与关闭
1.2、登陆
连接认证基本语法:
mysql.exe -h主机地址 -P端口 -u用户名 -p密码
1.3、退出
断开与服务器的连接:通常Mysql提供的服务器数量有限,一旦客户端用完,建议就应该断开连接。
exit; //exit带分号
\q; //quit缩写
2、数据库的基本操作
2.1、创建数据库
基本语法:create database 数据库名字 [库选项];
create database mydatebase;
2.2、显示数据库
每当用户通过SQL指令创建一个数据库,那么系统就会产生一个对应的存储数据的文件夹(data)
-
显示全部数据库
基本语法:show databases;
-
显示部分数据库
基本语法:show databases like ‘匹配模式’;
_:匹配当前位置单个字符
%:匹配指定位置多个字符
例子:获取以my开头的全部数据库: ‘my%’;
获取m开头,后面第一个字母不确定,最后为database的数据库;’m_database’;
获取以datbase结尾的数据库:’%database’;
-
显示数据库创建语句
基本语法:show create database 数据库名字;
2.3、选择与修改数据库
-
选择数据库
use 数据库名字;
-
修改数据库
修改数据库字符集(库选项):字符集和校对集
基本语法:alter database 数据库名字 charset [=] 字符集;
已近从utf-8修改为gbk了
2.4、删除数据库
基本语法:drop database 数据库名字;
3、数据表操作
3.1、创建数据表
- 方法1:create table 数据库名.表名(字段名 字段类型 [字段属性], 字段名 字段类型 [字段属性],…) [表选项]
- 方法2:进入到数据库里面,然后再:create table 表名(字段名 字段类型 [字段属性], 字段名 字段类型 [字段属性],…)
3.2、表选项
engine:存储引擎,mysql提供的具体存储数据的方式,默认有一个innodb(5.5以前默认是myisam)
charset:字符集,只对当前自己表有效(级别比数据库高)
Collate:校对集
3.3、复制表结构
从已近存在的表复制一份,只复制结构,不复制表中的数据
基本语法:create table 数据库名.新表名 like 数据库名.表名;
3.4、显示数据表
基本语法:show tables [like ‘匹配模式’ ] ;
3.5、显示表结构
describe 数据库名.表名
desc 数据库名.表名
show columns from 数据库名.表名
3.6、显示表创建语句
基本语法:show create table 数据库名.表名;
3.7、修改表结构
- 1)修改表名:rename table 数据库名.旧表名 to 新表名
-
2)修改表选项
alter table 表名 表选项 [=] 新值
-
3)删除表结构
基础语法:drop table 表名[,表名2…],可以同时删除多个数据表
4、字段的基本操作
4.1、新增字段
alter table 表名 add[column] 新字段名 列类型 [列属性] [位置 first/after 字段名]
位置默认是加到后面去的
4.2、修改字段名
修改字段名:alter table 表名 change 旧字段名 新字段名 字段类型 [列属性] [新位置]
4.3、修改字段类型(属性)
alter table 表名 modify 字段名 新类型 [新属性] [新位置]
4.4、删除字段类型
删除字段:alter table 表名 drop 字段名。
5、数据的基本操作(删增查改)
5.1、插入数据 insert(增)
-
Insert into 表名[(字段列表)] values ( 数据 ) //可以赋值一部分,但字段和数据的位置和类型要一致
-
Insert into 表名 values(对应表结构) //格式定好了,值列表必须与字段列表一致
-- 普通插入
insert into mydatabase2.my_student (name,age) values ('Tom',25);
-- 部分插入
insert into mydatabase2.my_student (age) values (20);
-- 默认插入
insert into mydatabase2.my_student values ('Jacl',20);
5.2、查询数据 select (查)
-
查询表中全部数据:select * from 表名; //*表示匹配所有的字段
select * from my_student;
-
查询表中部分字段:select 字段列表 from 表名; //字段列表使用逗号“,”隔开
select name from my_student;
-
简单条件查询数据:select 字段列表/* from 表名 where 字段名 = 值; //mysql中没有==符号
select * from my_student where name='Tom';
5.3、删除数据 delete(删)
基本语法:delete from 表名 [where 条件];
delete from my_student where name is NULL; //删除名字是空的值
5.4、更新数据 update (改)
基本语法:update 表名 set 字段名 = 新值 [where 条件];
update my_student set age=age+1;//所有人年龄+1