Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」

Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」一、创建表的完整语法 1、创建表的语法 create table 表名( ​ 字段名1 字段类型(数字) 约束条件, ​ 字段名2 字段类型(数字) 约束条件, ​ 字段名3 字段类型(数字) 约束条

Python基础之数据库:5、创建表的完整语法、MySQL数据类型

目录
  • 一、创建表的完整语法
    • 1、创建表的语法
    • 2、创建表的条件
    • 3、数字的含义
  • 二、MySQL数据类型
    • 1、字段类型之整型
    • 2、字段类型之浮点型
    • 3、字段类型之字符类型
    • 4、字段类型之枚举与集合
    • 5、字段类型之日期类型

一、创建表的完整语法

1、创建表的语法

create table 表名(

​ 字段名1 字段类型(数字) 约束条件,

​ 字段名2 字段类型(数字) 约束条件,

​ 字段名3 字段类型(数字) 约束条件,…)

Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」

2、创建表的条件

  • 字段名和字段类型必须填写
  • 数字和约束条件是可选的,可以不填
  • 约束条件也可以写多个,空格隔开就可以

3、数字的含义

​ 在创建表的时候,字段名后会加上数据的类型,而数据类型的后面又会加上数字,数字在很多地方都是用来限制储存数据的长度,但是在整型中数字是用来控制展示的长度,因此在写整型时,通常不用加数字

create table t12(id int(3));  不是用来限制长度
insert into t12 values(12345);

create table t13(id int(5) zerofill);  而是用来控制展示的长度
insert into t13 values(123),(123456789);

create table t14(id int);

二、MySQL数据类型

1、字段类型之整型

整型的种类:

  • tinyint

    • 特点:最大可以储存1个bytes(正负号占一个bit)
  • smallint

    • 特点:最大可以储存2个biyts(正负号占一个bit)
  • int

    • 特点:最大可以储存4个biyts(正负号占一个bit)
  • bigint

    • 特点:最大可以储存8个biyts(正负号占一个bit)

Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」

​ MySQL中整型默认自带正负号,正负号会占用一个bit,也就是说整型的最大值会受正负号影响,下面可以通过添加数据的方式验证正负号的存在

取消正负号:

​ 在创建表的阶段,在整型类型后添加关键词,就可以取消正负号

​ create table 表名(字段名 整型的类型 unsigned);

Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」

2、字段类型之浮点型

浮点型的种类:

  • float(m,d)
    • 特点:单精度浮点型 8位精度(4字节) m总个数,d小数位
  • double(m,d)
    • 特点:双精度浮点型 16位精度(8字节) m总个数,d小数位
  • decimal(m,d)
    • 特点:DECIMAL是一种定点类型,即所有值都有一个固定的小数位数。这 一点的重要性在于DECIMAL值不会像浮点数那样存在四舍五入的问题
    • M的取值范围是1〜65,D的取值范围是0〜30,且不超过M

Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」

3、字段类型之字符类型

字符类型的种类:

  • char(n)
    • 特点:固定长度,最多255个字符
  • carchar(n)
    • 特点:可变长度,最多65535个字符

区别:

​ char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。

Python基础之数据库:5、创建表的完整语法、MySQL数据类型「终于解决」

4、字段类型之枚举与集合

  • 枚举(多选一)
    • 枚举指在创建表的时候,指定的字段名后可以填入枚举类型,在关键词后方括号内,填入多个数据值,后期在往该字段名下添加数据时,只能添加枚举后括号内多个数据值的其中一个,否则将会报错
    • 关键词:enum(数据值1, 数据值2,…)
枚举:
	多选一
	create table t15(
    	id int,
      	name varchar(32),
       gender enum("male","female","others")
    );
 	insert into t15 values(1,"tony","猛男");
  	insert into t15 values(2,"jason","male");
 	insert into t15 values(3,"kevin","others");
  • 集合(多选多/多选一)
    • 集合和枚举的功能相似,也是在定义字段名阶段,在字段名后方添加集合关键词,在括号内填入多个数据值,在后期添加该字段名的数据的时候,可以填入指定的一个或多个数据值,指定外的数据值无法添加
    • 关键词:set(数据值1, 数据值2,…)
集合
	多选多/多选一
	create table t16(
    	id int,
      	name varchar(16),
       hobbies set("basketabll","football","doublecolorball")
    );
 	insert into t16 values(1,"jason","study");
 	insert into t16 values(2,"tony","doublecolorball");
	insert into t16 values(3,"kevin","doublecolorball,football");

5、字段类型之日期类型

类型的种类:

datetime		年月日时分秒
date			年月日
time			时分秒
year			年

代码用法:

create table t17(
	id int,
  	name varchar(32),
 	register_time datetime,
 	birthday date,
 	study_time time,
 	work_time year
);
insert into t17 values(1,"jason","2000-11-11 11:11:11","1998-01-21","11:11:11","2000");

涉及到时间类型的一般无需我们手动添加,系统都会自动进行添加

原文地址:https://www.cnblogs.com/kangssssh/archive/2022/11/23/16919701.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/4502.html

(0)
上一篇 2023-06-16
下一篇 2023-06-17

相关推荐

  • Python访问MySQL[亲测有效]

    Python访问MySQL[亲测有效]Python访问MySQL的步骤 创建connection连接,连接数据库 获取cursor游标对象 执行SQL语句 关闭cursor游标对象 关闭connection连接 import pymys…

    2023-03-24
    160
  • PS打开图片闪退原因

    PS打开图片闪退原因有的用户使用PS打开图片时会出现闪退的情况,这给用户带来了很大的不便。下面介绍一下PS打开图片闪退的原因。

    2024-09-22
    12
  • 以Pandas创建DataFrame为中心的教程

    以Pandas创建DataFrame为中心的教程使用Python进行数据分析是一个日益流行的技能,但是很难想象数据分析能够没有Pandas。Pandas是一个基于NumPy的开源数据分析工具,提供了高级数据结构和高效的数据操作工具。在Pandas中,DataFrame是一个非常常见的数据结构,它类似于电子表格或SQL表格,但具有更高的灵活性和功能。在本教程中,我们将以Pandas创建DataFrame为中心,重点介绍如何用Pandas处理和操作数据。

    2024-06-18
    49
  • 记录sql server 的批量删除主外键的sql语句[通俗易懂]

    记录sql server 的批量删除主外键的sql语句[通俗易懂]select b.name TableName,a.name TypeName,a.* from sysobjects a inner join sysobjects b on a.parent_o…

    2023-03-21
    151
  • 理解Python中的ndarray

    理解Python中的ndarray随着数据分析和机器学习的普及,Python的numpy模块中的ndarray逐渐成为Python中最常用的数据结构之一。Python的ndarray是一种多维数组对象,可以在Python中实现大规模数据和矩阵计算。

    2024-05-04
    65
  • 解析excel失败是怎么回事_EXCEL必备工具箱

    解析excel失败是怎么回事_EXCEL必备工具箱1.Excel解析工具easyexcel全面探索1.1.简介之前我们想到Excel解析一般是使用POI,但POI存在一个严重的问题,就是非常消耗内存。所以阿里人员对它进行了重写从而诞生了easyexc

    2023-03-02
    174
  • MySQL学习笔记(19):优化数据库对象

    MySQL学习笔记(19):优化数据库对象本文更新于2019-08-18,使用MySQL 5.7,操作系统为Deepin 15.4。 一旦数据库对象设计完毕并投入使用,再进行修改就比较麻烦。 优化表的数据类型 select_statement

    2023-03-22
    146
  • oracle 修改密码[通俗易懂]

    oracle 修改密码[通俗易懂]SYS用户是Oracle中权限最高的用户,而SYSTEM是一个用于数据库管理的用户。在数据库安装完之后,应立即修改SYS,SYSTEM这两个用户的密码,以保证数据库的安全。 安装完之后修改密码方法 c

    2022-12-18
    146

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注