use database;
show tables;
desc tablename;
drop database if exists dbname;
select count(*) as num from tablename;
select * from tablename;
select version(); //查看版本信息
select set @t=9;//声明变量
select $t*20;
select distinct(name) from tablename; //去除重复值
select concat("name:",name,"sex:",sex)as note from student; //合并
select concat ("name:",name,"sex:",if(sex,"boy","girl"))as note from student where sex=0 and name like "%xiao%";
select current_date; //查当前日期
select * from stu order by id desc limit 5; //排序
select name,briday from stu order by briday limit 1,2;
select distinct year(briday) as year from stu;
select length(name) from stu; //按字节计算
select char_length(name) from stu;//不考虑字节按字符计算
select * from stu where briday<=(select briday from stu order by briday limit 1);//取出数据库里年龄最大的人的信息
update stu set birday="2012/12/12" where id=1;
exit;quit; //退出
show character set; //查看字符集
show collation; //查看校对规则
show variables like "%character%";//字符集的环境变量
show variables like "%collation%";//字符集校对规则
alter table tablename add primary key (列名); //增加一个列
alter table stu add briday int(10);
alter table tablename drop 字段;//删除一个列
alter table tablename change oldname newname;//重命名一个列
delete from tablename where id=4;
insert into tablename(id,price) values (1,"56232541,25")
create table tablename(id smallint unsigned primary key auto_increment)engine=MyISAM default character set utf8;
grant all privileges on dbname .* to user@localhost identified by 'password'; //授权
use mysql; //使用mysql里面的默认表
select user from user; //查询mysql表里的所有用户
create user wenwen identified by 'wenwen'; //增加一个用户赋予一个密码
rename user wenwen to baby; //修改用户
drop user baby; //删除用户
show grants for wenwen; //查询该用户的权限
grant select on web .* to wenwen; //给用户赋予select权限
grant insert,update on web.student to linlin;
grant all privileges on web .* to user@localhost identified by 'password'; //给用户赋予web库的所有权限
revoke select on web.* from wenwen; //撤销用户权限
revoke insert,update on web.student from linlin;
revoke all privileges on web.* from user;
set password for wenwen = password("newpwd"); //修改指定用户的密码
mysqldump -uroot -p students>d:/students.sql //导出
mysql -uroot -p web<d:/students.sql //导入
source d:/student.sql //使用资源
在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看:
mysqldump
最常用的:
mysqldump -uroot -pmysql databasefoo table1 table2 > foo.sql
这样就可以将数据库databasefoo的表table1,table2以sql形式导入foo.sql中,其中-uroot参数表示访问数据库的用户名是root,如果有密码还需要加上-p参数
C:\Users\jack> mysqldump -uroot -pmysql sva_rec date_drv > e:\date_drv.sql
mysql的数据导入也是相当便捷的,如:
mysql -uroot databasefoo < foo.sql
这样就可以将foo.sql的数据全部导入数据库databasefoo
1.导出整个数据库
mysqldump -u用户名 -p密码 数据库名 > 导出的文件名
C:\Users\jack> mysqldump -uroot -pmysql sva_rec > e:\sva_rec.sql
2.导出一个表,包括表结构和数据
mysqldump -u用户名 -p 密码 数据库名 表名> 导出的文件名
C:\Users\jack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:\date_rec_drv.sql
3.导出一个数据库结构
C:\Users\jack> mysqldump -uroot -pmysql -d sva_rec > e:\sva_rec.sql
4.导出一个表,只有表结构
mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文件名
C:\Users\jack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:\date_rec_drv.sql
5.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:wcnc_db.sql
(1)查看表的存储类型(三种):
- show create table tablename
- show table status from dbname where name=tablename
- mysqlshow -u user -p password --status dbname tablename
(2)修改表的存储引擎:
- alter table tablename type=InnoDB
(3)启动mysql数据库的命令行中添加以下参数使新发布的表都默认使用事务:
- --default-table-type=InnoDB
(4)临时改变默认表类型:
- set table_type=InnoDB
- show variables like 'table_type'
待续。。。