5.4python笔记
2022/5/30 1:19:44
本文主要是介绍5.4python笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
MySQL字符编码配置及字段
字符编码与配置文件
#查看MySQL默认字符编码 如果是5.x系列,显示的编码又多种>>>:latin1、gbk 如果是8.x系列,显示的统一是>>>:utf8mb4(utf8优化版本,支持存储表情)
统一字符编码
# MySQL安装列表中找到配置文件 my-default.ini # 配置文件 # 更改配置文件 步骤1:拷贝一份该配置文件并修改名称为my.ini 步骤2:清空my.ini文件内的内容 步骤3:添加固定的配置信息如下: [mysqld] character-set-server=utf8 collation-server=utf8_general_ci [client] default-character-set=utf8 [mysql] default-character-set=utf8 步骤4:保存并重启服务端即可生效 net stop mysql # 关闭服务端 net start mysql # 打开服务端
存储引擎
可以理解为处理数据的不同方式,不同的存储引擎存储的特点各不相同; #查看存储引擎 show engines; #需要了解的引擎 MyISAM: 5.1之前版本MySQL默认的存储引擎; 特点:存取数据速度快,但功能很少,安全性较低; InnoDB: 5.1之后版本MySQL”默认“的存储引擎; 特点:有诸多功能,安全性较高,但存取速度没有MyISAM快; BlackHole: 任何写入的数据都会立刻消失(类似于垃圾回收站); Memory: 以内存作为数据存储地,速度快但是断电立刻丢失;
创建表的完整语法
create table 表名( 字段名1 字段类型(数字) 约束条件, 字段名2 字段类型(数字) 约束条件, 字段名3 字段类型(数字) 约束条件 ); ''' 1.字段名和字段类型是必须的 2.数字和约束条件是可选的 3.约束条件可以写多个 空格隔开即可 字段名1 字段类型(数字) 约束条件1 约束条件2 约束条件3 4.最后一行字段结尾不能加逗号 极其容易被忽略!!! '''
字段类型之整型:
tinyint 1bytes 小整数值 smallint 2bytes 大整数值 int 4bytes 大整数值 bigint 8bytes 极大整数值
浮点型
float 4个字节 单精度浮点数值 double 8个字节 双精度浮点数值 decimal 对DECIMAL(M,D),如果M>D,为M+2字节否则为D+2字节 精确小数值 上述浮点型从上往下精确度越来越高 float(255,30) 总共255位 小数位占30位 double(255,30) 总共255位 小数位占30位 decimal(65,30) 总共65位 小数位占30位 对于声明语法 DECIMAL(M,D) ,自变量的值范围如下: M是最大位数(精度),范围是1到65。可不指定,默认值是10。 D是小数点右边的位数(小数位)。范围是0到30,并且不能大于M,可不指定,默认值是0。 例如字段 salary DECIMAL(5,2),能够存储具有五位数字和两位小数的任何值,因此可以存储在salary列中 的值的范围是从-999.99到999.99。
字符类型
char 和 varchar 是最常用到的。char 类型是定长的,MySQL 总是根据定义的字符串长度分配足够的空间 当保存 char 值时,在它们的右边填充空格以达到指定的长度,当检索到 char 值时,尾部的空格被删除掉。varchar 类型用于存储可变长字符串,存储时,如果字符没有达到定义的位数,也不会在后面补空格。如果字符超出了定义的位数,会报错。 char(M) 与 varchar(M) 中的的 M 表示保存的最大字符数,单个字母、数字、中文等都是占用一个字符。 # 工作中使用char还是varchar? char 整存整取,速度快;但会造成一定的资源浪费; varchar 节省存储空间;取数据速度没有char块且不知道数据的精确长度 ''' varchar在存数据的时候会生成一个1bytes的报头 记录数据长度 varchar在取数据的时候先会读取1bytes的报头 从中获取真实数据长度 1bytesjason1bytes+kevin1bytes+tony ''' 使用场景>>>: 针对统一中国人的姓名,应该采取那个类型? >>> varchar 规模较小,数据量相对固定的字典? >>> char
字段类型括号内数字的含义
(1)字段类型括号内的数字大部分情况下是用来限制存储的长度; (2)但是在整型中并不是用来限制长度,而是用来控制展示长度; # 验证int类型括号内数字的作用 create table t12(id int(3)); insert into t12 values(1111); # 不会报错 select * from t12; # id 1111 create table t13(id int(3) zerofill); # 使用约束条件zerofill>>>:数据不够用0填充 insert into t13 values(1),(1111); select * from t13; # id 001 1111
字段类型之枚举与集合
#枚举: 多选一 作用:给某字段设置指定选项,针对某字段只能添加指定的选项 create table t14(gender enum('male','female','others')); insert into t14 values('jason'); # 报错,Data truncated for column 'gender' at row 1 #集合: 多选多(也可多选一) 作用:给某字段设置多个可选选项,同时可以选取多个或一个 create table t15(name varchar(32), hobby set('篮球','足球','排球')); insert into t15 values('jason','篮球,排球'); # 给某字段添加多个值
日期类型
date 年月日 datetime 年月日时分秒 time 时分秒 year 年 # 创建带日期字段的表 create table t16( id int, name varchar(32), reg_time datetime, birth date, study_time time, join_time year ); # 针对时间数据一般都是通过代码自动获取并添加,我们可以手动模拟 insert into t16 values(1,'jason','2000-11-11','2002-01-21','11:11:11','2015'); # 1 | jason | 2000-11-11 00:00:00 | 2002-01-21 | 11:11:11 | 2015
约束条件
#无需正负号 unsigned #零填充 zerofill #非空 not null #默认值 default create table t19(id int,name varchar(32) default '1111'); 插入数据时该字段给了值,就用输入的值,没给值则使用默认值。 #唯一值 unique create table t1( id int unique, ); 该字段的值是唯一的,不可重复。 '''多列唯一:多个字段下对应的数据组合到一起的结果不能重复 是唯一的''' create table t1( id int, name varchar(32), unique(id,name) ); id和name组合在一起的值唯一。 (1,'张三')(1,'李四') (2,'张三')可以 #主键 primary key(非空且唯一) create table t1( id int primary key, name varchar(32) ); 将id字段设置为主键,那么id不能为空且值不能重复。 #自增: auto_increment 自动增加 专门配合主键一起使用 用户以后在添加数据的时候就不需要自己记忆主键值 create table t1( id int primary key auto_increment, name varchar(32) ); 之后我们添加数据就不需要写id的值,它会自动增长。
这篇关于5.4python笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门