第一节
使用SQL命令创
建数据库及表
大数据系列课程
汇报人:XXXXX       时间:XXXXXX
学习目标
理解数据库和表的概念
掌握创建数据库和表的SQL命令
数据库建表字段类型
主键
备注/not null
数据库和表的概念
思考:前程贷网站上展示的标信息是存放在哪的?--数据库
数据库的概念
            存储数据的容器  --- 衣帽间,架子-- 衣服,鞋子,帽子, 饰品
表的概念
            真正的存储数据单元  ---架子
数据库与表的关系
            一对多的关系,一个库里通常维护了多个表
            一个数据库服务器下面,多个
SQL:结构化查询语言,Structured Query Language
SQL是用于访问和处理数据库的标准计算机语言
中文  英文  --人类沟通使用
Python  C C# C++  go  java  汇编 --计算机编程语言
SQL能做什么
创建数据库、表等数据库对象
1
数据库记录的增、删、改、查
2
SQL
5a0c4b54b7431-01
创建数据库
语法
create database 数据库名称
示例 :创建前程贷的数据库
create database  future;
创建表
思考:如何将下面excel表的数据保存到数据库中的某个表里面去
分析:为了将数据放进表里,我们需要创建的表,必须跟excel的数据的结构是一样的
创建表
语法
create table <表名> ( <字段名1> <类型1> , <字段名2> <类型2> ...<字段名n> <类型n>)
DEFAULT CHARSET=utf8;
解释
字段名:用来标识表的一列
字段类型:用来声明每一个字段存储数据的类型,因为在mysql中,数据是有类型的(整数,
小数,字符,时间)
字符集:UTF8,用来指定表支持中文数据存储
示例:创建上面student表的sql
create table student(
id int not null PRIMARY key auto_increment,
name varchar(12),
sex varchar(12) ,
class_id int(11) ,
address varchar(12) ,
create_date datetime,
update_date datetime
) DEFAULT CHARSET=utf8;
常见字段类型
类型
说明
整型
tinyint
整数,取值范围为: -128~127
int
整数,取值范围为: -2147483648~ 2147483647
字符型
char(n)
n个字符,最多255个字符,固定长度  --浪费资源
varchar (n)
可变长度,最多65535个字符,可变长度  --不会浪费资源
日期时间类型
date
日期,格式(yyyy-mm-dd,例如: 2016-08-22)
time
时间,格式(hh:mm:ss,例如: 18:40:37)
datetime
日期时间,格式(yyyy-mm-dd hh:mm:ss,例如: 2016-08-22 18:41:27)
timestamp
timestamp支持的范围是1970-01-01 00:00:01到2038-01-19 03:14:07,在数据
库用整型的int型存储
浮点型
float(m, d)
单精度浮点型,32bit,m代表总位数,d小数位,如99.99声明类型为:float(4,2)
double(m, d)
双精度浮点型,64bit,m代表总位数,d小数位。
区别:双精度类型能表示的小数的精确度更高。
decimal(m, d)
数字型,128bit,m代表总位数,d小数位。
decimal数据类型用于精度要求非常高的计算中。比如语句 DECIMAL(7,3) 规定了
存储的值不会超过 7 位数字,并且小数点后不超过 3 位。
每个字段都有自己的类型,如整数型、字符型、时间类型、日期类型、浮点型等。
主键
主键是什么?它有什么特征
主键字段存储的值不能重复,因此主键可以唯一标识一行数据。
一个表只能有一个主键。不能为空
主键是非必需的,也就是说一个表可以不声明主键字段。
语法
<字段名> <类型>  primary key;
思考:上面student表哪个字段适合做主键?
主键值生成策略
自动增长 auto_increment
not  null
default --默认值
eb6ad19233554a0c96bf4359a0074c3d
总结
创建表声明字段的时候,字段之间以什么符号分隔?符号用中文的可以吗?--英文
逗号
建表声明字段的时候,最后一个字段后面需要注意什么?--无逗号
主键的特征是什么? -- 非空  唯一
如果表需要支持中文数据存储,需要怎么做? -DEFAULT CHARSET=utf8
创建了表,发现表没有出现,可以刷新一下表。
navicatsql写完丢失了,其实是因为没保存。 --ctrl+s
学会分析错误:Err
以上关于创建表的sql语句能看懂就ok,真实工作中不要求去创建
谢谢!