基本的MySQL语句很简单,这里主要谈谈一些容易遗忘的。
1.如何设置字段递增
create table tb_User(Id int auto_increment not null primary key,UserName varchar(50),Password varchar(20));
2.查看表结构
desc tb_User;
3.如何修改表结
重命名表:alter table tb_User rename tb_UserInfo;
添加一列:alter table tb_User add (Date datetime);
删除一列:alter table tb_User drop column Date;
修改一列属性:alter table tb_User change UserName UserName varchar(50) not null;(用此方法可以重命名一列)
添加主键:alter table tb_User add primary key(主键字段);
添加索引:alter table tb-User add index(字段名);
4.如何备份和导入数据库
这个问题有几种方法,但是我个人更喜欢mysqldump,举个例子我现在有一个数据库db_cmj
现在要想将这个数据库附加到另一台电脑上,如果两台电脑网络通的话可以通过mysqldump命令直接一部完成,但是这种情况要注意mysql版本问题。我这里提供一种通用的方法,也是更容易理解的:试想一下如果你能够将现在我这台电脑上的db_cmj中所有的信息都变成sql语句,并保存到一个文件中,然后拿着这个文件到另一台机器上执行以下不就可以了吗。
具体怎么做呢?
命令行中输入:mysqldump -uroot -p db_cmj > db_cmj.sql [回车]
输入密码
就会生成一个db_cmj.sql文件,里面包含所有你的数据库信息,这个文件好像在C:/Documents and Settings/Administrator下
然后拿到这个文件到另一台机器上,例如放到那台机器的c盘根目录,从命令行进入mysql后执行db_cmj.sql中sql语句,这里我们用批处理
执行:source C:/db_cmj.sql[回车]
就会发现你已经成功将数据库拷贝到这台机器上了,既方便又直观,最主要是可以得到sql语句,这才是本质。
注意:这个过程最常见的一个问题就是,编码不正确,我们想象的是肯定用的是默认编码utf-8,所以在用mysqldump时就不用指定编码方式,而事实上我们要指定,而且要制定成latin1,也就是命令改为:mysqldump -uroot -p db_cmj > db_cmj.sql --default-character-set=latin1。这个问题网上有很多,但是大多数没有给出很好的解释。
上面说到了数据库的备份和导出,其实最主要的目的还是将一台机器上的数据库复制一份到另一台机器上能够正常使用,那么我们能不能够像复制文件一样复制一份呢?答案是肯定的,既然mysql可以建立数据库并保存数据,那么这些数据库肯定是个文件,只要找到复制到相应的位置上就可以了。事实上确实是这样,mysql对应的有一个data文件夹,而里面有以相应数据库名字命名的文件夹,拷贝相应的文件夹就可以了。关键这个文件夹在哪里,mysql5.0好像是在安装目录,而mysql5.1好像默认是在C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1里面。
5.修改密码
运行--cmd:mysqladmin -uroot -p旧密码 password 新密码
注意:结尾没有‘;’ ,password后有空格。
常见问题:
1.如何插入当前日期
insert into tb_User(UserName ,Password,Date) vlaues('cmj','123',Now());
2.字段唯一性
字段唯一性用的是unique。
拓展:
1.如何利用MySQL实现分页 (假设页有五条记录,现在显示第三页。s=(3-1)*5=10)
select * from tb_User limit 10,5;