创建数据库:create database 数据库名
删除数据库: drop database 数据库名
修改数据库编码: alter database 数据库名 character set utf8
数据类型
- int:整型
- double:浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;
- decimal:浮点型,在表示钱方面使用该类型,因为不会出现精度缺失问题;
- char:固定长度字符串类型;char(10) a
- varchar:可变长度字符串类型;65535字节,根据数据的实际长度来占用内存空间 varchar(10)
- blob:大字节类型;text
- date:日期类型,格式为:yyyy-MM-dd;
- Time:时间类型 格式:hh:mm:ss
- Datetime yyyy-MM-dd hh:mm:ss
- timestamp:时间戳类型;yyyy-MM-dd hh:mm:ss
操作表
创建表:
create table 表名(
列名 列类型,
列名 列类型
)
示例:
create table stu(
id char(6),
name varchar(20),
age int
)
查看表结构:DESC 表名
删除表:DROP TABLE 表名
DML
插入数据:
INSERT INTO 表名(列名1,列名2) values(值1,值2)
因为没指定插入的列,所以表示按创建表时列的顺序插入所有的值
INSERT INTO 表名 values(值1,值2)
修改数据:
UPDATE 表名 SET 列名 1='值',列名 2='值' where id=1
删除数据:
DELETE FROM 表名 where 条件
TRUNCATE TABLE 表名
虽然TRUNCATE和DELETE都可以删除表的所有记录,但有原理不同。DELETE的效率没有TRUNCATE高!
TRUNCATE其实属性DDL语句,因为它是先DROP TABLE,再CREATE TABLE。而且TRUNCATE删除的记录是无法回滚的,但DELETE删除的记录是可以回滚的(回滚是事务的知识!)。