mysql库和表的相关操作
2016-01-30 10:33
645 查看
创建数据库
CREATE DATABASE databasename DEFAULT CHARSET=字符集;
选择数据库
USE databasename;
创建表
语法如下:CREATE TABLE tablename( 属性名 类型 约束条件, 属性名 类型 约束条件, ... ) 整个表的约束条件;
一个具体的例子:(以下创建一个学生表, 主键为id, )
CREATE TABLE student ( id INT NOT NULL AUTO_INCREMENT, #设置自增 name VARCHAR(10) NOT NULL, sex CHAR NOT NULL, age INT NOT NULL, addr VARCHAR(100) NOT NULL, no CHAR(10) NOT NULL, PRIMARY KEY(id) #设置主键 foreign key id references 引用表名(id) on delete casecade ) DUFAULT CHARSET=utf8 ENGINE=InnoDB; #设置表的相关配置, 比如此处设置编码使用utf8, 使用innodb引擎
创建表的另外两个方法:
假如我们要创建一个和已有表一模一样的表
create table new_table_name like a_exist_table_name;
通过select的结果创建一个含有数据的表(这个表通常作为临时使用)
create table new_table_name as (select * from a_table_name);
查看表中的定义的所有属性和其类型
DESC 表名
关于创建表是的完整性约束mysql并不支持check, 虽然将check写入语句会被解析, 但是会被所有引擎忽略掉, 这是官方的说明. 如果需要实现类似的功能可以使用触发器实现,default 关键词是可用的, 注意default后面没有等号, 直接跟默认值
修改表结构
1.删除表
DROP tablename
2.更改表的结构
使用”alter”语句更表的结构和属性
ALTER TABLE tablename ADD (属性名 数据类型 约束条件 first or after 属性名) or 索引 or 外键 #插入新的属性 ALTER TABLE tablename DROP 属性名 or 主键 or 索引 or 外键 #删其中的一项属性 ALTER TABLE tablename MODIFY 属性名 新的数据类型 alter table tablename change 属性名, 新的属性名, 新的数据类型 #重命名表 ALTER TABLE tablename RENAME AS 新表名
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- Android之获取手机上的图片和视频缩略图thumbnails
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- 数据库链接字符串查询网站
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法