//插入中文会报错
//修改表编码
alter table teacher convert to character set utf8;
/通知服务器客户端使用的编码是gbk
set character_set_client=gbk;
//通知服务器客户端查看结果集使用的编码是 gbk
set character_set_results=gbk;
数据库命令框如果有中文就乱码
charset gbk;
数据库命令
///建库
CREATE DATABASE 数据库名;
//删除创建的数据库
drop database mydb1;
//选择数据库
use mydb1
//产看数据库创建细节
show create database mydb1;
//创建一个使用GBK的字符集的数据库
create database mydb2 character set gbk;
数据库表的命令
//创建表
create table student(id int,name varchar(20),sex varchar(20),age int,salary float(6,2),birthday date)
//删除表
drop table student;
//查看所有表
show tables
//查看表的创建细节
show create table student;
//展示表结构
desc student
// 数据库中表 添加
// 在原有的学生基础上添加address列
alter table student add address varchar(20)
//数据库中表 删除
//在原有的学生基础上删除address列
alter table student drop address
建表的注意事项
- AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
- PRIMARY KEY关键字用于定义列为主键。标识数据库记录唯一性,键值不能为空,主键也是一个特殊索引
- UNIQ0UE KEY的用途:防止数据插入的时候重复
- ENGINE:设置存储引擎
- CHARSET: 设置编码
数据库的插入语言
//插入数据
insert into student values(1,’zhangsan’,’nan’,19,389.10,’1999-10-10’);
数据库的删除语言
//删除单条数据
delete from student where id=1;
//删除所有数据,不删除结构,会放到日志中,事务提交后才生效
delete from student;
//摧毁表,删除表中所有数据,不删除结构,立即生效
truncate table student;
注意:delete from student; 与 truncate table student; 都能删除该表中所有数据,区别:前者
删除后自增主键还在,后者主键会从1开始。
数据库的修改数据
//设置所有人的年龄加10岁
update student set age=age+10
//修改zhangsan 为张三
update student set name=’张三’ where name=’zhangsan’
//修改王五的salery和出生日期
update student set salery=100.01,birthd