MySQL常用命令
2014-11-04 12:56
99 查看
添加一个用户
grant all privileges on *.* to 'username'@'%' identified by 'password' with grant option;
创建数据库
create database database_name;
查看当前用户
select user();
使用数据库
use database_name
创建表
create table table _name(field-name-1 field-type-1 modifiers);
create table member (id int(11) auto_increment,name varchar(20) not null,telphone varchar(22) not null, primary key (id));
创建表的时候使用外键
create table table-name(field-name-1 field-type-1 modifiers,foreign key(fk_fkname) references table-name (field))
craete table employees(id int(4) not null, name char(255) not null,primary key (id),foreign key(fk_department) references depaertments (id),);
向表中添加一列
alter table table-name add field-name varchar(255) not null;
添加记录
insert into table_name (field-name1,field-name2,field-name3,) values(value-1,value-2,value-3);
更改记录
update table-name set field-name (where子句)
删除数据
delete from table_name ;
(用where子句来选择要删除的特定行的子集)
更改表中的数据
updata table_name set field_name=new_value [用where子句来选择要更改的特定行的子集]
修改已存在字段的名字和类型
alter table table-name change field-name new-field-name type
alter table member change qq qqnumber int(20);
删除字段或者键
alter table table-name drop field
alter table member drop email;
重命名表
alter table table-name rename to new-table-namecommit
rename table table-name to new-table-name
删除表
drop table table-name
查询语句
select * from table_name [where 子句]
使用内建函数
count(),计算结果集中记录的个数
select count(*) form table_name;
avg() 计算结果集合中的平均值
sum()计算结果集合中的和
min()计算结果结合中最小值
max()计算结果结合中最大值
使用通配符
% 表示零或者多个字符的具体值
_ 下划线 表示一个字符的具体值
例如 我们想选择表中 name 包含字母 ‘e’的所有成员,可以这么写
select * from member where name like '%e%';
选择所有姓刘的人员
select * from member where name like '刘%';
选择所有姓名是两个字的姓刘的人员
select * from member where name like '刘_';
复制表
结合 create table 和select语句
create table table_name select * from other-table-name
注释:不能从源表中复制键,需要手工创建
可以通过在select 查询中指定字段来限制出现在副本表中的字段
create table table-name select field1,field2 from other-table-name
或者 create table table-name like other-table-name
从文件导入数据
load data infile '文件路径' into table table-name field terminated by '分隔符' lines terminated by '分隔符';
当使用服务器上的数据文件时,如果调用load data infile 时没有指定文件路径(或者只指定了一个相关路径),mysql会在服务器上查找文件的相应数据库目录(或者把它作为相关路径)。不过,绝对路径仍然照样使用
导出数据
select * from table-name into out file '文件路径';
注释:登录客户端必须具有file权限才能在服务器上使用导入导出命令
grant all privileges on *.* to 'username'@'%' identified by 'password' with grant option;
创建数据库
create database database_name;
查看当前用户
select user();
使用数据库
use database_name
创建表
create table table _name(field-name-1 field-type-1 modifiers);
create table member (id int(11) auto_increment,name varchar(20) not null,telphone varchar(22) not null, primary key (id));
创建表的时候使用外键
create table table-name(field-name-1 field-type-1 modifiers,foreign key(fk_fkname) references table-name (field))
craete table employees(id int(4) not null, name char(255) not null,primary key (id),foreign key(fk_department) references depaertments (id),);
向表中添加一列
alter table table-name add field-name varchar(255) not null;
添加记录
insert into table_name (field-name1,field-name2,field-name3,) values(value-1,value-2,value-3);
更改记录
update table-name set field-name (where子句)
删除数据
delete from table_name ;
(用where子句来选择要删除的特定行的子集)
更改表中的数据
updata table_name set field_name=new_value [用where子句来选择要更改的特定行的子集]
修改已存在字段的名字和类型
alter table table-name change field-name new-field-name type
alter table member change qq qqnumber int(20);
删除字段或者键
alter table table-name drop field
alter table member drop email;
重命名表
alter table table-name rename to new-table-namecommit
rename table table-name to new-table-name
删除表
drop table table-name
查询语句
select * from table_name [where 子句]
使用内建函数
count(),计算结果集中记录的个数
select count(*) form table_name;
avg() 计算结果集合中的平均值
sum()计算结果集合中的和
min()计算结果结合中最小值
max()计算结果结合中最大值
使用通配符
% 表示零或者多个字符的具体值
_ 下划线 表示一个字符的具体值
例如 我们想选择表中 name 包含字母 ‘e’的所有成员,可以这么写
select * from member where name like '%e%';
选择所有姓刘的人员
select * from member where name like '刘%';
选择所有姓名是两个字的姓刘的人员
select * from member where name like '刘_';
复制表
结合 create table 和select语句
create table table_name select * from other-table-name
注释:不能从源表中复制键,需要手工创建
可以通过在select 查询中指定字段来限制出现在副本表中的字段
create table table-name select field1,field2 from other-table-name
或者 create table table-name like other-table-name
从文件导入数据
load data infile '文件路径' into table table-name field terminated by '分隔符' lines terminated by '分隔符';
当使用服务器上的数据文件时,如果调用load data infile 时没有指定文件路径(或者只指定了一个相关路径),mysql会在服务器上查找文件的相应数据库目录(或者把它作为相关路径)。不过,绝对路径仍然照样使用
导出数据
select * from table-name into out file '文件路径';
注释:登录客户端必须具有file权限才能在服务器上使用导入导出命令