MySQL常用命令

2017-04-03  本文已影响12人  大湛湛

1、CREATE创建
创建数据库:
  CREATE DATABASE [ if NOT EXISTS] 名称 [CHARACTER SET 编码格式] [COLLATE 比较方式];
创建表:
  CREATE TABLE [IF NOT EXISTS] 名称 (字段名称 数据类型,……) [CHARACTER SET 编码格式] [COLLATE 比较方式];

2、ALTER修改
修改数据库格式:
  ALTER DATABASE 名称 [CHARACTER SET 编码][COLLATE 比较格式];
修改数据库表的格式:
  ALTER TABLE 名称 [ADD|CHANGE|DROP|MODIFY] 字段名称 [新名称] [数据类型]

为user表新增一个字段password 字符串32
  ALTER TABLE user ADD password VARCHAR(32);

为user表中的name字段重命名为username
  ALTER TABLE user CHANGE name username VARCHAR(20);

删除user表中的test字段
  ALTER TABLE user DROP test;

修改user表中username字段的长度为30
  ALTER TABLE user MODIFY username VARCHAR(30);

修改user的表名为user1
  RENAME TABLE user TO user1;

3、DROP删除
删除数据库格式:
  DROP DATABASE [ if EXISTS] 名称;
删除数据表格式:
  DROP TABLE 名称;
删除数据库mydb4:DROP DATABASE IF EXISTS mydb4;
删除test3表:DROP TABLE IF EXISTS test3;

4、INSERT新增语句
格式:INSERT INTO 表名[(字段名称)] VALUES(值1,值2);
  INSERT INTO user (id,username,password,flag) VALUES(5,'战旗','838',1);
//简写形式
  INSERT INTO user VALUES5(5,'战旗','838',1);

5、UPDATE修改语句
格式:UPDATE 表名 SET 字段名称=值[多个字段] [WHERE 条件]

修改id为2的用户名字为金星
  UPDATE user SET username='金星' WHERE id=2;
修改id为3的用户的名字和密码
  UPDATE user SET username='网警',password="654321" WHERE id=3;
修改user中所有的密码为123456
  UPDATE user SET password='123456';

6、DELETE删除语句
删除表中的数据
格式:DELETE FROM 表名 [where 条件];

删除user中名称为王星的人
  DELETE FROM user WHERE username='王星';

开发中的删除:
1、真删除
直接使用DELETE语句删除指定的数据
2、假删除
使用UPDATE 修该指定字段

为user表新增一字段,flag标记是否有效,0有效1删除
ALTER TABLE user ADD flag int;
UPDATE user SET flag=0;
SELECT * FROM user WHERE flag=0;
UPDATE user SET flag=1 WHERE id=4;

7、SELECT查询语句
主要用来查询数据
格式:SELECT * |字段名称|函数 FROM 表名 [WHERE 条件] [order by 字段名称] [group by 字段名称][having 条件][limit 限制]
1、*
  *在查询语句中表示当前表的所有字段(顺序为建表时字段顺序)
2、where条件:
  常用的条件符合:
1、=、<、>、!=、<>、<=、>=
2、AND:并且,同时满足
3、OR:或者,满足其一
4、IN (值,……):对应的字段的值再()里,一般不连续的多个值
5、between A and B:在A和B之间,[A,B]
6、IS NULL:为空
7、NOT:不
8、子查询

查询user表中所有信息
SELECT * FROM user;
等价于
SELECT id,username,password,flag FROM user;

查询有效的名字
SELECT username FROM user WHERE flag=0;

查询id大于1小于6的人
SELECT * FROM user WHERE id<6 AND id>1;
等价
SELECT * FROM user WHERE id BETWEEN 2 AND 5;

查询id为4或者id为8
SELECT * FROM user WHERE id=4 OR id=8;

查询id不为6的人
SELECT * FROM user WHERE id!=6;
等价
SELECT * FROM user WHERE id<>6;

查询id为2或5或6的人
SELECT * FROM user WHERE id=2 OR id=5 OR id=6;
等价
SELECT * FROM user WHERE id IN (2,5,6);

8、实名登录
shell> mysql -h host -u user -p
Enter password: ********

9、匿名登录
  一些MySQL安装允许用户以匿名(未命名)用户连接到本地主机上运行的服务器。如果你的机器是这种情况,你应该能不带任何选项地调用mysql与该服务器连接:

shell> mysql
成功地连接后,可以在mysql>提示下输入QUIT (或\q)随时退出:

mysql> QUIT
Bye
  在Unix中,也可以按control-D键断开服务器。

10、\c取消命令
如果你决定不想执行正在输入过程中的一个命令,输入\c取消它:
例如:
mysql> SELECT
-> USER()
-> \c
mysql>
  这里也要注意提示符,在你输入\c以后,它切换回到mysql>,提供反馈以表明mysql准备接受一个新命令。

下表显示出可以看见的各个提示符并简述它们所表示的mysql的状态:
提示符  含义
mysql>  准备好接受新命令。
->    等待多行命令的下一行。
'>    等待下一行,等待以单引号(“'”)开始的字符串的结束。
">    等待下一行,等待以双引号(“"”)开始的字符串的结束。
>    等待下一行,等待以反斜点(‘’)开始的识别符的结束。
/>    等待下一行,等待以/开始的注释的结束。

11、SHOW显示
使用SHOW DATABASES;语句找出服务器上当前存在什么数据库
SHOW TABLES;使用某个数据库后,显示这个数据库中的表

12、DESCRIBE 描述
mysql> DESCRIBE pet;

13、文件导入到表
  要想将文本文件“pet.txt”装载到pet表中,使用这个命令:
mysql> LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet;
  请注意如果用Windows中的编辑器(使用\r\n做为行的结束符)创建文件,应使用:
mysql> LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet
-> LINES TERMINATED BY '\r\n';
  (在运行OS X的Apple机上,应使用行结束符'\r'。)
  如果你愿意,你能明确地在LOAD DATA语句中指出列值的分隔符和行尾标记,但是默认标记是定位符和换行符。这对读入文件“pet.txt”的语句已经足够

14、数据库的备份和恢复
数据的备份
  在cmd中,输入:mysqldump -u 用户名 -p 要备份的数据库 >路径/文件名称.sql

数据的恢复
  需要进入到Mysql,创建数据库,并使用数据库
  source 要恢复的sql文件的路径;

上一篇下一篇

猜你喜欢

热点阅读