建
1、创建数据库并指定字符集:
creat database 库名 default character set utf8;
2、创建表
creat table 表名(
id INT auto_increment primary key,
name varchar(30),
age tinyint(2)
default character set utf8;
);
增
添加主键约束:alter table 表名 add constraint 主键 (形如:PK_表名) primary key 表名(主键字段);
添加外键约束:alter table 从表 add constraint 外键(形如:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);
添加列:alter table 表名 add column 列名 varchar(30);
插
insert into 表名 (字段1,字段2,...) value(字段1值,字段2值, ...);
insert into 表名(name,age) value("zhangsan",22);
删
删除主键约束:alter table 表名 drop primary key;
删除外键约束:alter table 表名 drop foreign key 外键(区分大小写);
删除列:alter table 表名 drop column 列名
删除属性:
ALTER TABLE 表名 DROP 属性名
删除表:
DROP TABLE 表名
删除主键:
ALTER TABLE 表名
DROP PRIMARY KEY;
删除外键:
ALTER TABLE 表名
DROP FOREIGN KEY 外键别名
删除唯一性:
ALTER TABLE 表名
DROP UNIQUE 唯一性约束名
删除所有记录:
TRUNCATE TABLE 表名; 或者
DELETE FROM 表名;
改
修改表改名ALTER TABLE tab RENAME newtab
修改表改名RENAME TABLE tab to newtab
修改列位置ALTER TABLE 表名 MODIFY COLUMN id FIRST(AFTER);
修改列位置ALTER TABLE 表名 MODIFY COLUMN id FIRST name;
修改列类型ALTER TABLE 表名 MODIFY COLUMN 字段名 字段类型定义;
修改列类型ALTER TABLE chatter_users MODIFY COLUMN ip VARCHAR(50);
修改列名称ALTRT TABLE tabname CHANGE num age.
修改列名称ALTRT TABLE bbb change nnnnn hh int;
修改列属性:alter table t_book modify name varchar(22);
修改默认值:ALTER TABLE 表名 ALTER 属性名 SET DEFAULT 值;
修改 AUTO_INCREMENT 初始值:ALTER TABLE 表名 AUTO_INCREMENT=新初始值;
查
查看表的字段信息:desc 表名;
查看表的所有信息:show create table 表名;
显示有几张表
show tables
显示存储过程
show procedure status;
show create procedure p_cms_all_user_regions;
查看表的结构:
desc 表名;
导
导出数据库中的表:
mysqldump -uroot -p 表名>d:xxx.sql //不用加分号
导入表到数据库:
mysql -uroot -p 库名 < d:xxx.sql //不用加分号。
其他
改属性排列顺序:
ALTER TABLE 表名 MODIFY 属性名 数据类型 FIRST | AFTER 属性名;
更改表的存储引擎:
ALTER TABLE 表名 ENGINE=存储引擎名;
查看表信息:
DESC 表名;
或者
SHOW CREATE TABLE 表名;
要支持外键应用 Innodb 引擎,而 mysql默认为 MyISAM,
可在配置文件 my.cnf中的 [mysqld] 下面加入 default-storage-engine=INNODB
查询数据库编码
show variables like'%char%';
修改编码:
set character_set_database=utf8;
set character_set_server=utf8;
set character_set_client=gb2312;
set character_set_connection=gb2312;
mysql server 字符编码为utf8
mfc查询乱码问题:查询时设置编码即可
mysql_query(&mysql,"SET NAMES 'GB2312'");