更新数据库
- 数据库名字不可以修改- 数据库的修改仅限库选项,即字符集和校对集(校对集依赖字符集) alter database 数据库名字[库选项]; charset/characterset[=]字符集 collate校对集
删除数据库
drop database数据库名字;
表操作
新增数据表
create table[ifnotexists]表名(字段名字 数据类型),········字段名字 数据类型)[表选项]
表选项:控制表的表现
字符集:charset/characterset具体字符集;--保证表中数据存储的字符集校对集:collate 具体校对集存储引擎:engine具体的存储引擎(innodb和myisam)
方案一:
- 显示地指定表所属的数据库:
- create table 数据库名.表明();
方案二:
- 隐式地指定表所属数据库- 进入数据库环境:use数据库名字;
查看数据表
- 查看所有表:show tables;- 查看部分表(模糊查询):show tables like'pattern'; pattern是匹配模式 %表示匹配多个字符 _表示匹配单个字符查看表的创建语句:show create table表名;查看表结构(表中的字段信息):desc/describe/show columnsfrom表名;
修改数据库
修改表本身 修改表名;renametable旧表名to新表名; 修改表选项(字符集,校对集,存储引擎都可以修改):altertable表名 表选项[=]值;修改字段
删除数据表:drop table表名1,表名2........;
字段操作
新增字段:altertable表名add[column]字段名数据类型[列属性][位置];first:第一个位置after:在哪个字段之后:after字段名;修改字段:altertable表名modify字段名数据类型[列属性][位置];重命名字段:altertable表名change旧字段 新字段名 数据类型[列属性][位置];删除字段:altertable表名drop字段名;
数据操作
新增数据
方案一: 给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致,凡是非数值数据,都需要使用引号(建议是单引号)包裹insertinto表名values(值列表)[,(值列表)];方案二: 给部分字段插入数据,需要选定字段列表,字段列表出现的顺序与字段的顺序无关,但是值列表的顺序必须与选定的字段顺序一致insertinto表名(字段列表)values(值列表)[,(值列表)];
查看数据
查看所有数据:select * from 表名[where条件];查看指定字段,指定条件的数据:select 字段列表 from 表名 [where
条件];
更新数据
update 表名set字段 = 值[where条件];建议都有where,否则就是更新全部
删除数据
删除是不可逆的,谨慎删除deletefrom表名 [where 条件];
数据类型
数据类型(列类型):对数据进行统一的分类,从系统的角度出发,为了能够使用统一的方式进行管理,更好的利用有限的空间
SQL中将数据类型分为三类
数值类型
字符串类型
时间日期类型
数值型
整数型:存放整型数据
tinyint:迷你整型,使用1个字节存储,表示的状态最多为256种
smallint:小整型,使用2个字节存储,表示的状态最多为65536种
mediumint:中整型,使用3个字节存储
int:标准整型,使用4个字节存储
bigint:大整型,使用8个字节存储