视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
MySql常用查询命令操作大全
2020-11-09 20:29:09 责编:小采
文档


MYSQL常用查命令:

mysql> select version(); 查看MySQL的版本号
mysql> select current_date(); 查看MySQL的当前日期
mysql> select version(),current_date(); 同时查看MySQL的版本号和当前日期
mysql> show databases; 显示当前存在的数据库
mysql> USE mysql 选择使用数据库(USE和QUIT命令不需要分号结束)
Database changed
mysql> select database(); 显示当前选择的数据库
mysql> show tables; 显示当前数据库中存在的表
mysql> select * from db; 显示表(db)的内容 
mysql> describe mytable; 显示表的结构

或show columns from 表名;

mysql> select
-> user()
-> \c
mysql>

练习如下操作:

mysql> select
-> USER()
-> ,
-> now()
->;
mysql> Select (20+5)*4;
mysql> Select (20+5)*4,sin(pi()/3);
mysql> Select (20+5)*4 AS Result,sin(pi()/3); (AS: 指定假名为Result)

查看MySQL当前用户占用的连接数

命令: show processlist;

如果是root帐号,你能看到所有用户的当前连接。如果是其它普通帐号,只能看到自己占用的连接。

show processlist;只列出前100条,如果想全列出请使用show full processlist;

mysql> show processlist;

一。数据库:

mysql> CREATE DATABASE abccs; 创建一个数据库 
mysql> USE abccs 选择使用数据库
mysql> drop database 数据库名; 删除数据库

二。表:

1。创建一个表mytable:

mysql> CREATE TABLE mytable
-> (
-> name VARCHAR(20),
-> sex CHAR(1),
-> birth DATE,
-> birthaddr VARCHAR(20)
-> );

建立一个员工生日表,表的内容包含员工姓名、性别、出生日期、出生城市。

由于name、birthadd的列值是变化的,因此选择VARCHAR,其长度不一定是20。

可以选择从1到255的任何长度,如果以后需要改变它的字长,可以使用ALTER TABLE语句。

性别只需一个字符就可以表示:"m"或"f",因此选用CHAR(1);

birth列则使用DATE数据类型。

2。查询刚添加的记录:

mysql> select * from mytable;

Empty set (0.00 sec) 这说明刚才创建的表还没有记录。

3。添加新记录:

mysql> insert into mytable 
-> values
->(
->'abccs',
->'f',
->'1977-07-07',
->'china'
->);

4。用文本方式将数据装入一个数据库表:

一条一条地添加新记录,实在太麻烦。

创建一个文本文件“mysql.txt”,按表结构排好每行每条记录,用定位符(tab)把值分开。

abccs f 1977-07-07 china 
mary f 1978-12-12 usa
tom m 1970-09-02 usa

使用此命令将文本文件“mytable.txt”装载到表中:

mysql> Load data local infile "mytable.txt" into table mytable;

数据传入命令load data local infile "文件名" into table 表名;

注意:你最好将文件复制到mysql/bin目录下,并且要先用use命令选表所在的库。

5。更新记录:

mysql> update mytable set birth = "1973-09-02" where name = "tom";

6。删除记录:

mysql> delete from mytable where id=10; //删除掉所有id=10的记录;
mysql> delete from mytable where id=10 limit 1; //删除掉1条id=10的记录;
mysql> delete from mytable //删除一个表的全部记录;
mysql> DELETE FROM t1 WHERE C>10;
mysql> drop table tablename1,tablename2,…; //删除整一个表或多个表,小心使用。

7。重命名表:

mysql> alter table t1 rename t2;

8。修改mysql的表结构:

查看mysql的表结构:

mysql> describe mytable; 或用show columns from 表名;

修改字段属性

mysql> alter table tablename modify id int(10) unsigned auto_increment primary key not null

修改默认值

mysql> alter table tablename alter id default 0

给字段增加primary key

mysql> alter table tablename add primary key(id);

删除primary key

alter table tablename drop primary key;
drop primary key on tablename;

修改table表数据引擎

mysql> alter table tableName ENGINE = MyISAM (InnoDB);

增加一新字段名:

mysql> alter table mytable add column single char(1);
mysql> ALTER TABLE table ADD field INT(11) UNSIGNED NOT NULL

删除字段

mysql> alter table t2 drop column c;

附:

为了改变列a,从INTEGER改为TINYINT NOT NULL(名字一样),

并且改变列b,从CHAR(10)改为CHAR(20),同时重命名它,从b改为c:

ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);

增加一个新TIMESTAMP列,名为d:

ALTER TABLE t2 ADD d TIMESTAMP;

在列d上增加一个索引,并且使列a为主键:

ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a);

增加一个新的AUTO_INCREMENT整数列,命名为c:

ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);

注意,我们索引了c,因为AUTO_INCREMENT柱必须被索引,

并且另外我们声明c为NOT NULL,因为索引了的列不能是NULL。

使用name列的头10个字符创建一个索引:

CREATE INDEX part_of_name ON customer (name(10));

三。数据的备份与恢复:

导出和导入数据:(命令在DOS的mysql/bin目录下执行)

导出表

mysqldump --opt school > school.sql

注释:将数据库school中的表全部备份到school.sql文件,school.sql是一个文本文件,

文件名任取,打开看看你会有新发现。

mysqldump --opt school teacher student > school.teacher.student.sql

注释:将数据库school中的teacher表和student表备份到school.teacher.student.sql文件,school.teacher.student.sql是一个文本文件,文件名任取,打开看看你会有新发现。

导入表

mysql
mysql>create database school;
mysql>use school;
mysql>source school.sql;

(或将school.sql换为school.teacher.sql / school.teacher.student.sql)

导出数据库

mysqldump --databases db1 db2 > db1.db2.sql

注释:将数据库dbl和db2备份到db1.db2.sql文件,db1.db2.sql是一个文本文件,文件名

任取,打开看看你会有新发现。

(举个例子:

mysqldump -h host -u user -p pass --databases dbname > file.dump

就是把host上的以名字user,口令pass的数据库dbname导入到文件file.dump中。)

导入数据库

mysql < db1.db2.sql

复制数据库mysqldump --all-databases > all-databases.sql

注释:将所有数据库备份到all-databases.sql文件,all-databases.sql是一个文本文件,文件名任取。

导入数据库

mysql
mysql>drop database a;
mysql>

您可能感兴趣的文章:

  • MySQL命令行下18个常用命令
  • Linux系统中MySQL的常用操作命令
  • Centos7重启apache、nginx、mysql、php-fpm命令方法
  • linux下导入、导出mysql数据库命令的实现方法
  • 详解MySQL中EXPLAIN解释命令及用法讲解
  • MySql数据库查询中的特殊命令
  • Mysql如何使用命令实现分级查找帮助详解
  • 解决Windows10下mysql5.5数据库命令行中文乱码问题
  • Linux操作系统操作MySQL常用命令小结
  • Mysql使用kill命令解决死锁问题(杀死某条正在执行的sql语句)
  • MySQL 5.7 mysql command line client 使用命令详解
  • MySQL 数据库 source 命令详解及实例
  • mysql授权、启动、启动服务常用命令
  • 下载本文
    显示全文
    专题