菜单

mysql数据库常用语句

2014-11-17 - Developer

最近在做ecshop发现mysql忘了一大堆,复习一下。

name数据库  name1表格1  依次类推

create database name character set ‘utf8’;  创建数据库及编码方式(一键式创建)

crate database name;  创建数据库

show databases;   查看数据库名称(列举数据库)

use name;  选择数据库(进入数据库)

drop database name;   删除数据库

update 表格 set 字段1=值1,字段2=值2 where id=number;  更新数据库,字段值如果是具体值要加引号,number是id的数值代称

ceate table name1(id name email phone);  创建数据表

auto_increment 自动编号  primary key 主键  unique key  约束键

desc name1;  查看表格结构   =show columns from name1;   查看表格结构

default max;   默认数值

select * from name1;   查看数据表数据

show create database name;   查看数据库编码

alter database character set ‘utf8′;    设置数据库编码

alter table 表格 modify 字段 新数据类型;     修改字段数据类型

alter table 表格 change 字段 新字段 新数据类型;    修改字段和数据类型

alter table 表格 add 新字段 数据类型;   添加字段

first 可选参数  将新添加的字段设置为表格的第一个字段

after 将新添加的字段添加到指定的已存在字段之后

alter table 表格 drop 字段;   删除字段

alter table 表格 modify 字段1 数据类型 first/after 字段2;   修改字段位置(前/后)

alter table 表格 add 字段 数据类型 first/after;   表格中添加字段在首/末

alter table 表格 ENGINE |CHARSET=MyISAM | utf8;  修改引擎或编码方式

alter table 表格 drop foreign key 外约束键;   删除表的外约束键

alter table 子表 drop foregin key 外键;  解除子父表关联

alter table 表格 rename 新表格名;  修改表格名

select name from 表格;  查询类别

————————————————————————————————————————————————————————————————————————————-

select distinct 类别 from 表格;   查询字段不得重复

select username from name1 where username=’admin’;    查询数据表中属于字段username的admin

***************************************************************************************************************************************

select id,usename,email from name1 where id in (1,20) order by username;    查询数据表中字段username的id为1到20的记录  在in前加not则反之

实际应用中比如要查询一个二级管理员登陆且不显示超级管理的管理员列表,剩余的都显示,那么就用到in了

例:select id,username,email from name1 where username not in (“admin”) order by id desc;

********************************************************************************************************************************************************

select id,username from name1 where id between 1 and 20;   查询1到20之间的id数据   between前加not则反之

select id, username from name1 where username like ‘b%’;    查询以b开头的所有数据

insert name1 (id,user,pwd) values (‘1′,’123′,’admin’);   写入表格数据

select 字段,字段1,字段2 from name1 where 字段2 is null;  查询表中字段2为空的记录的字段、字段1、字段2的值   null前面加not反之

select 字段,字段1 from 表格 where 字段1 like ‘_ _ _ _y’;   查询表中以字母y结尾,且y前只有4个字母的记录

select 字段,字段1,字段2,字段3 from name1 where 字段=’值’ and 字段1>=’5′;    查询表中字段的值并且值大于5的记录数据

select 字段,字段1,字段2,字段3 from name1 where 字段=’6′ or 字段=’5′;   查询字段值为5或6的记录数据值,多字段查询(或多条件查询)

=select 字段,字段1,字段2,字段3 from name1 where 字段 in(5,6);

select distinct id from 表;  查询表的id值,并返回id不重复

select distinct 字段id from 表格;  查询结果不重复
select  字段 from 表格 order by 字段;   对查询结果升序排序,如果是多列排序在字段后面加逗号(,)分开字段
select 字段1,字段2  from 表格 order by 字段1 desc;  查询结果按字段1的结果降序排列
select 字段1,字段2 from 表格 order by 字段1 desc,字段2;  多值不同排列,字段1降序排列,字段2升序排列
————————————————————————————————————————————————————
mysqldump -u user -h host -p dbname [tbname,[tbname…]]>filename.sql   tbname表示数据库中的表名,多个表之间空格隔开
例:mysqldump -u user -h host -p bookDB book>D:/test/book_01.sql   创建book_01.sql的备份
mysqldump -u user -h host -p –databases [tbname,[tbname…]]>filename.sql  备份多个数据库
例:mysqldump -u user -h host -p –phone bookDB book>D:/test/book_01_phone.sql   创建book_01_phone.sql的备份,其中包含2个数据库,如果使用–all–databases则是备份所有的数据库
mysql -u user -p [dbname]<filename.sql  mysql还原

转载请注明: 转载自—艾瑞可erik

本文链接地址: http://erik.xyz/390.html

标签:,

发表评论