说明在mysql语句中,sql语句总共分四种
a、DDL数据定义语句=>常用的ddl语句有(CREATE【创建】,DROP【删除】,ALTER【修改表结构】)
b、DML数据操作语句=>常用的dml语句有(INSERT【添加】,UPDATE【修改数据】,DELETE【删除】)
c、DQL数据查询语句=>常用的dql语句有(SELECT【查询】)
d、DCL数据控制语句=>用于管理数据库和用户的. 常用的有(commit, savepoint, rollback, grant, revoke)
1、mysql的命令行登录(注意:在登录后的mysql命令行里面,结束符用;或者用\g来结束)
//第一种登录方式
mysql -hlocalhost -uroot -p -P3306 => mysql -uroot -p//再输入自己的密码就可以执行登录(注意在windows下面,可以把mysql添加到环境变量中)-P表示端口号默认是3306,-h表示地址,-D表示登录的同时登录到指定的数据库注意区别开prompt的D
//第二种登录方式
mysql -uroot -p123456//123456表示密码
2、mysql的退出方式
//第一种方式
exit
//第二种方式
quit//第三种方式
ctrl+c
3、修改mysql的命令提示符
--第一种在登录的时候进行修改,只对当次的连接有效,注意在使用的时候要用双引号
mysql -uroot -p --prompt "test>"--在修改命令提示符的时候\h表示主机名\u表示当前用户\d表示当前打开的数据库\D表示当前的日期时间
mysql -uroot -p --prompt "\h\u\d\D>"--mysql 在显示时设置对齐的小技巧,以下设置完后,那么显示就整齐了
cmd>mysql -uroot -p --default-character-set=latin1
mysql>set names gbk;
4、mysql 获取基本信息以及规范
--获取版本号,在未登录之前进行查看
mysql -V
msyql--version--进入数据库之后查看版本号(注意在语句结束后要用;或者\g来结尾而\c来表示不执行当前命令)
SELECTVERSION();--查看当前用户
SELECTUESR();--获取当前数据库
SELECT DATABASE();--获取当前时间
SELECTNOW();--注意数据库和表名称不要用mysql的内部名称进行命名,如果一定要使用,那么要用``将其括起来
SELECT @@SQL_MODE;--查看mysql的模式,是否是严格模式
SHOW ENGINES\G;--查看mysql存储引擎
SHOW VARIABLES LIKE 'storage_engine';--查看默认的存储引擎
SHOW TABLE STATUS LIKE 'test'\G;--查看表的状态 如果查看全部的则是SHOW TABLE STATUS\G;
CHECK TABLEtest--检查表的内容test表示表名并且这边的表名是不加引号的
REPAIR TABLEtest--修复表test表示表名并且这边的表名是不加引号的
SHOW PROCESSLIST--查看当前有多少个客户端口连接到该数据库,该指令可以帮助我们查看当前有多少个客户端连接到mysqldb上,有助于我们了解当前的mysql运行和使用状况
5、数据库的相关操作
创建数据库
不同的校验规则,会对查询时字母是否区分大小写和排序有影响, 举例:
(1) 默认的 utf8_general_ci 不区分大小写
(2) 还有有个 utf8_bin 这个是区分大小写.
--创建数据库
CREATE DATABASE`test`;--为了阻止重名的提示,表示如果不存在test的情况下新建test,也就是把错误信息放到警告中区
CREATE DATABASE IF NOT EXISTS`test`;--查看警告,注意没有括号
SHOW WARNINGS;--在创建数据库的时候指定编码方式
CREATE DATABASE IF NOT EXISTS `test` DEFAULT CHARACTER SET 'UTF8';--在创建数据库的同时,指定编码方式和较验规则
CREATE DATABASE IF NOT EXISTS `db` DEFAULT CHARACTER SET `utf8` DEFAULTCOLLATE `utf8_general_ci`;--查看指定数据库的编码方式
SHOW CREATE DATABASE`test`;--修改指定数据库的编码方式alter表示改变的意思
ALTER DATABASE `test` DEFAULT CHARACTER SET 'UTF8';--查看数据库
SHOW DATABASES;--打开指定数据库
USEtest;--获得当前已经打开的数据库
SELECT DATABASE();--删除指定的数据库
注意在打印SHOW CREATE DATABASE `dbname`时会出现
表示当mysql版本大小4.01.00的时候会执行后面语句
比如:当执行/*!50500 SHOW DATABASES */时表示当mysql 的版本大于5.05.00的时候,会执行里面语句;
数据库的备份与恢复
数据库备份的基本语法(在未进入mysql即cmd环境下):cmd>mysqldump -uroot -p 数据库名>d:/备份路径/备份名.bak
如果只想备份其他的几张表,语法是:cmd>mysqldump -uroot -p 数据库名 表名1 表名2 >d:/备份路径/备份名.bak
数据库恢复的步骤
如果库中有中文字符的情况,最好设置 set names gbk;
创建一个新的空库(mysql 环境下)
use 新的数据库
SOURCE d:/备份路径/备份名.bak
同时备份多个数据库 mysqldump -uroot -p -B 数据库名1 数据库名2 数据库名3 >d:/路径/文件名.bak
那么同时恢复多个数据库SOURCE d:/备份路径/备份名.bak 即可(注意设置set names gbk)
6、数据表的相关操作
数据表中的