首页  >  文章  >  数据库  >  MySQL常见SQL语句使用方法总结

MySQL常见SQL语句使用方法总结

大家讲道理
大家讲道理原创
2017-02-11 14:51:141583浏览

创建用户

CREATE USER 'root'@'%' IDENTIFIED BY 'password';

创建用户并赋予指定权限

grant create,select,update,insert,delete,alter on bbs.* to lvtao@localhost identified by 'password';

创建用户并赋予全部权限

Grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;

创建备份用户

GRANT SELECT,RELOAD,SHOW DATABASES,LOCK TABLES,EVENT,REPLICATION CLIENT  ON *.* TO 'bak'@'localhost' IDENTIFIED BY 'password';

备份所有数据库

mysqldump -u root -p --all-databases --ignore-database=performance_schema --ignore-database=information_schema --skip-lock-tables > /home/db.sql

导出一个数据库结构

mysqldump -u root -p -d –add-drop-table database >/home/db.sql

恢复数据

A:常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source wcnc_db.sql

B:使用mysqldump命令
mysqldump -u username -p dbname < filename.sql

C:使用mysql命令
mysql -u username -p -D dbname < filename.sql

创建数据库

create database <数据库名>;

显示所有的数据库

show databases;

删除数据库

drop database <数据库名>;

选择数据库

use <数据库名>;

查看当前使用的数据库

select database();

当前数据库包含的表信息:

show tables;

建表

create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);

mysql> create table MyClass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default &#39;0&#39;,
> degree double(16,2));

获取表结构

desc 表名,或者show columns from 表名

mysql>DESCRIBE MyClass;
mysql>desc MyClass; 
mysql>show columns from MyClass;

删除表

drop table <表名>

mysql> drop table MyClass;

插入数据

insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]

mysql> insert into MyClass values(1,&#39;Tom&#39;,96.45),(2,&#39;Joan&#39;,82.99), (2,&#39;Wang&#39;, 96.59);

查询表中的数据

1)、查询所有行
命令: select <字段1,字段2,...> from < 表名 > where < 表达式 >
例如:查看表 MyClass 中所有数据
mysql> select * from MyClass;2)、查询前几行数据
例如:查看表 MyClass 中前2行数据
mysql> select * from MyClass order by id limit 0,2;
或者:
mysql> select * from MyClass limit 0,2;

删除表中数据

delete from 表名 where 表达式

mysql> delete from MyClass where id=1;

修改表中数据

update 表名 set 字段=新值,… where 条件

mysql> update MyClass set name=&#39;Mary&#39; where id=1;

在表中增加字段:

alter table 表名 add字段 类型 其他; 

mysql> alter table MyClass add passtest int(4) default &#39;0&#39;

更改表名:

rename table 原表名 to 新表名; 

mysql> rename table MyClass to YouClass;

更新字段内容

update 表名 set 字段名 = 新内容update 表名 set 字段名 = replace(字段名,&#39;旧内容&#39;,&#39;新内容&#39;);
文章前面加入4个空格update article set content=concat(&#39;  &#39;,content);

更新字段部分字符串

update contents set `text`=REPLACE(text,&#39;http://www.lvtao.net&#39;,&#39;https://www.lvtao.net&#39;)

字段:数值类型
2821500286.png

字段:字符串型

3580688214.png
字段:日期型
4083039105.png



声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn