设为首页 加入收藏

TOP

Python学习日记(三十三) Mysql数据库篇 一(二)
2019-09-23 11:18:12 】 浏览:103
Tags:Python 学习 日记 三十三 Mysql 数据库篇
nnodb 
default charset=utf8;

innodb:支持事务,能恢复到之前的状态,原子性操作

myisum

③null、not null、default、auto_increment:

null->就是我的数据可以为空

not null->就是我的数据不可以为空

default->可以为我的数据设置一个默认值

auto_increment->用于自增,一般来说要搭配primary key使用;primary key的作用为约束(不能重复也不能为空)、加速查找,一个表里面只能有一个自增列,并且要有一个主键

3.操作文件中的内容  

<1>insert into 表名(第一列数据名,第二列数据名...) values(值1,值2...); 往表内插入数据

<2>selcet * from 表名; 查看表内所有信息

接上1的步骤结果

再添加一条信息

<3>解决中文数据问题

 

<4>delete from 表名; 清空这个表的数据

若一个表只有一个自增数,它的id已经增加到3,若使用delete from 去清空这个表,再之后又新增了一笔资料后,它的自增值不重新开始

<5>truncate table 表名; 清空这个表的数据,执行速度快

使用trucate table就不会出现自增值不会不重新计算的情况

<6>drop table 表名; 删除这个表

 

 

数据表基本数据类型

按整数去分:

1.int  

int unsighed:无符号整数 范围:0 ~ 4294967295

int sighed:有符号整数 范围:-2147483648 ~ 2147483647

2.tinyint

tinyint unsighed:无符号小整数 范围:0 ~ 255

tinyint sighed:有符号小整数 范围:-128 ~ 127

3.bigint

bigint unsighed:无符号大整数 范围:0 ~ 18446744073709551615

bigint sighed:有符号大整数 范围:-9223372036854775808 ~ 9223372036854775807

 

按小数去分:

1.FLOAT[(m,d)] 

并不准确的小数 数值越大越不准确,m是数字总个数,d是小数点后个数

 FLOAT unsighed:无符号单精度浮点数 范围:

-1.7976931348623157E+308 ~ -2.2250738585072014E-308
0
2.2250738585072014E-308 ~ 1.7976931348623157E+308

FLOAT sighed:有符号单精度浮点数 范围:
0
1.175494351E-38 to 3.402823466E+38

2.DOUBLE[(m,d)]

并不准确的小数 数值越大越不准确,m是数字总个数,d是小数点后个数

DOUBLE unsighed:无符号双精度浮点数 范围:

-1.7976931348623157E+308 to -2.2250738585072014E-308
0
2.2250738585072014E-308 to 1.7976931348623157E+308

DOUBLE sighed:有符号双精度浮点数 范围: 

 0
 2.2250738585072014E-308 to 1.7976931348623157E+308

3.decimal[(m[,d])]

精准的小数值,m是数字总个数(负号不算),d是小数点后个数,m最大值为65,d最大值为30

 

按字符串去分:

1.char(m)

char数据类型用于表示固定长度的字符串,可以包含最多达255个字符.其中m代表字符串的长度。即使数据小于m长度,也会占用长度。

2.varchar(m)

varchars数据类型用于变长的字符串,可以包含最多达255个字符。其中m代表该数据类型所允许保存的字符串的最大长度,只要长度小于该最大值的字符串都可以被保存在该数据类型中。

虽然varchar使用起来较为灵活,但是从整个系统的性能角度来说,char数据类型的处理速度更快,有时甚至可以超出varchar处理速度的50%。因此,用户在设计数据库时应当综合考虑各方面的因素,以求达到最佳的平衡

创建数据表时把定长的数据往前放置,把不固定长度的数据往后放

3.text

text数据类型用于保存变长的大字符串,可以组多到65535 (2**16 ? 1)个字符 

4.mediumtext

范围:16,777,215 (2**24 ? 1)个字符

5.longtext

范围:4,294,967,295 or 4GB (2**32 ? 1)个字符

将上传文件存硬盘,DB存路径

 

按时间类型分:

1.DATE

YYYY-MM-DD(1000-01-01/9999-12-31)

2.TIME

HH:MM:SS('-838:59:59'/'838:59:59')

3.YEAR

YYYY(1901/2155)

4.DATETIME

YYYY-MM-DD HH:MM:SS(1000-01-01 00:00:00/9999-12-31 23:59:59 Y)

5.TIMESTAMP

YYYYMMDD HHMMSS(1970-01-01 00:00:00/2037 年某时)

按二进制数据分:

1.TinyBlob

2.Blob

3.MediumBlob

4.LongBlob

 

其他:

1.bit[(m)]

二进制位(101001),m表示二进制位的长度(1-64),默认m=1

2.enum

枚举类型An ENUM column can have a maximum of 65,535 distinct elements.(The practical limit is less than 3000.)
示例:
CREATE TABLE shirts (
      name VARCHAR(40),
      size ENUM('x-small', 'small', 'medium', 'large', 'x-large')
                    );
INSERT INTO shirts (name, size) VALUES ('dress shirt','large'), ('t-shirt','medium'),('polo shirt','small');

3.set

集合类型A SET column can have a maximum of 64 distinct members.
示例:
CREATE TABLE myset (col SET('a', 'b', 'c', 'd'));
INSERT INTO myset (col) VALUES ('a,d'), ('d,a'), ('a,d,a'), ('a,d,d'), ('d,a,d');

 

基本的增删改查

1.插入

insert into 表名(第一列数据名,第二列数据名...) values(值1,值2...);

2.删除

delete from 表名 where id<6; 只删除id小于6的数据

3.修改

①让表中所有的这个列下的值都改成一个固定数据:

首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Part_one:Redis第一次接触 下一篇数据库系统原理(第二章关系数据..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目