Mysql学习笔记<2>数据表SQL
来源:互联网 发布:raysource软件下载 编辑:程序博客网 时间:2024/05/29 09:14
数据表SQL
数据表创建
语法:
create table 表名(列名 类型(长度),列名 类型(长度) ...) character set 编码集;
举例:
create table users(
id int,
name varchar(40),
password varchar(40),
birthday date
);
注:
如果不设置编码集,数据表将采用数据库默认字符集
所有数据类型中,除了char 、varchar 必须指定长度,其它类型默认长度
数据类型
1) 整数类型 tinyint (byte) smallint(short) int(int) bigint(long) float double
2) 字符串类型 varchar char 长度取值0-255 ---- String
varchar变长 ,长度会根据保存内容自动调整
char定长
注:varchar经常使用,char性能更好
3) 逻辑性 bit 一位 --- boolean *bit(8)表示8位 等于tinyint ,bit(32) 等于int
4) 日期型 date time datetime timestamp
date 只能保存日期
time 只能保存时间
datetime 日期和时间都有
timestamp 日期和时间都有,自动更新 ---- 操作数据表,timestamp字段自动更新当前时间
5) 大数据类型 text、blob
text 文本类型数据,主要存储字符文件 --- 文本文件
blob 二进制文件 ,存储任何类型文件(音乐、电影)
注:blob和text最大类型 longtext longblob 最大可以保存4GB文件
举例:
创建一个员工表employee (
id 整形
name 字符型
gender 字符型
birthday 日期型
entry_date 日期型
job 字符型
salary 小数型
resume 大文本型
);
create table employee (
id int,
name varchar(40),
gender varchar(10),
birthday date,
entry_date date,
job varchar(20),
salary double,
resume longtext
);
约束
单表约束:
主键约束(唯一标识一条记录)
唯一约束(该字段内容不允许重复)
非空约束(值不能为空)
主键约束----- primary key 不能为空、不能重复
注:主键数字类型,一般设置主键自动增长 mysql设置自动增长 auto_increment
唯一约束 ----- unique 一张表只有最重要那个字段才能作为主键
非空约束 ----- not null
举例:
create table employee (
id int primary key not null auto_increment ,
name varchar(40) unique not null,
gender varchar(10) not null,
birthday date not null,
entry_date date not null,
job varchar(20) not null,
salary double not null,
resume longtext not null
);
数据表查看
语法:desc 表名;
数据表修改
语法:
<1>向已有数据表添加一列 :alter table 表名 add 列名 类型(长度) 约束;
<2>改变已有数据表一列类型、长度: alter table 表名 modify 列名 类型(长度) 约束;
<3>改变已有数据表一列的名称 : alter table 表名 change 旧列名 新列名 类型(长度) 约束;
<4>删除已有一列 : alter table 表名 drop 列名;
<5>修改表名: rename table 旧表名 to 新表名;
<6>修改表的字符集:alter table student character set utf8;
练习 :
<1>在上面员工表的基本上增加一个image列 ----- alter table employee add image varchar(255);
<2>修改job列,使其长度为60 ------ alter table employee modify job varchar(60) not null;
<3>删除gender列。------ alter table employee drop gender;
<4>表名改为user。 ----- rename table employee to user;
<5>修改表的字符集为utf8 ---- alter table user character set utf8;
<6>列名name修改为username ---- alter table user change name username varchar(40) unique not null;
数据表删除
语法:
drop table 表名;
注:show tables; 查看当前数据 中所有表
- Mysql学习笔记<2>数据表SQL
- Sql语句学习笔记(2)-创建数据表
- MySQL学习笔记2:数据类型与操作数据表
- MySQL学习笔记 2:约束、修改数据表和操作数据表中的记录
- sql学习笔记(14)------------数据表
- MySQL学习笔记(三)修改数据表
- MySql学习笔记_数据表的创建。
- MySQL学习笔记-数据类型与操作数据表
- MySQL学习笔记-约束以及修改数据表
- MySQL学习笔记-操作数据表中的记录
- MySQL学习笔记 1:初涉MySQL、数据类型与操作数据表
- 笔记-mysql基础2-改变数据表结构
- sql学习笔记(MySQL)
- Mysql学习2——创建数据表
- mysql学习4-数据表
- MySQL学习笔记_2_MySQL创建数据表(上)
- MySQL学习笔记_3_MySQL创建数据表(中)
- MySQL学习笔记_4_MySQL创建数据表(下)
- JVM系列三:JVM参数设置、分析
- HTML框架
- 基础知识整理
- 黑马程序员:集合和IO流的结合运用(重点)
- QT QPlainTextEdit 获取某行内容
- Mysql学习笔记<2>数据表SQL
- C# JSONHelper之Json转换方法大全
- Servlet/JSP中的路径,Tomcat部署项目时问题
- Web image 详解(网络图像)
- 位1计算的优化
- Linux环境中gdb调试C++工程基础命令
- MySQL与MongoDB之SQL语法对比
- 格式化显示时间(实例)
- 报表开发,之前世今生