1,MySQL 创建数据表

CREATE TABLE IF NOT EXISTS `runoob_tbl`(
   `runoob_id` INT UNSIGNED AUTO_INCREMENT,
   `runoob_title` VARCHAR(100) NOT NULL,
   `runoob_author` VARCHAR(40) NOT NULL,
   `submission_date` DATE,
   PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

2,数据库中ALTER 和 UPDATE的区别
一、功能上的区别
1、Alter:修改表结构,例如:增加表的字段 Alter table test Add(id,int).
2、UPdate:修改表数据 例如:修改字段id列的值 update test set id=2;

二、本质上的区别
1、Alter是数据定义语言(Data difinition Language),在修改表的结构时,不需要Commit和Rollback。
2、Update是数据数据操作语言(Data manipulation Language),在修改数据值时,需要Commit和Rollback,否则提交的结构无效。

3,表插入值
1.向一个表中插入一条数据insert into tbl_name(列1,列2,...,列n) values(val1,val2,...,valn);
2.创建表的同时将另一个表的数据插入到新创建的表中create table tbl_name as select * from tbl_old ;
3.将一个表中的数据插入到另一个表中insert into tbl_name select * from tbl_old; ---两个表的字段需相同
4.将一个表的字段数据插入到另一个表的字段数据中insert into tab1(列1,列2) select 值1,值2 from tbl2;
附:当多个表的多个字段插入到同一个表的多个字段时方法与上面类似。
5.将一个表的A字段的值赋给B字段:update tbl_name set B = A;

4,mysql备份与还原数据库的常用命令
一、备份数据:
mysqldump -u用户名 -p密码 --databases 数据库1 数据库2 > xxx.sql
常见选项:
-u: 用户名
-p: 密码
-P: 端口号,不写默认3306
--all-databases, -A:备份所有数据库
--databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldum把每个名字都当作为数据库名。
-d: 只导出数据库的表结构
-t: 只导出数据库的数据
--quick, -q:快速导出
--xml, -X:导出为xml文件

下面是具体的使用samples:
1. 备份全部数据库的数据和结构(-A) mysqldump -uroot -p123456 -A > 0101.sql
2. 备份全部数据库的结构(-d) mysqldump -uroot -p123456 -P3306 -A -d > 0102.sql
3. 备份全部数据库的数据(-t) mysqldump -uroot -p123456 -P3306 -A -t > 0103.sql
4. 备份单个数据库的数据和结构(sakila 为数据库名) mysqldump -uroot -p123456 -P3306 sakila > 0104.sql
5. 备份单个数据库结构(sakila 为数据库名,-d) mysqldump -uroot -p123456 -P3306 sakila -d > 0105.sql
6. 备份单个数据库数据(sakila 为数据库名,-t) mysqldump -uroot -p123456 -P3306 sakila -t > 0106.sql
7. 备份多个表的结构和数据 (table1,table2为表名) mysqldump -uroot -p123456 -P3306 sakila table1 table2 > 0107.sql
8. 一次备份多个数据库 mysqldump -uroot -p123456 --databases db1 db2 > 0108.sql

二、还原数据库:
1. 系统命令行:

mysqladmin -uroot -p123456 create db_name 
mysql -uroot -p123456  db_name < d:\bak\0101.sql


注:在导入备份数据库前,db_name如果没有,是需要创建的; 而且与backup20110527.sql中数据库名是一样的才可以导入。
2. soure 方法:

mysql > use db
mysql > source d:\bak\0101.sql

Comments:
1. 还原单个数据库、单个数据库的多表需要指定数据库,而还原多个数据库时不用指定数据库。
2. 区别:备份用的命令是mysqldump, 还原用的是mysql。