python学习笔记——SQL语法基础

SQL语法基础

  • SQL语句主要分为
    • DDL语句:数据定义语言,这些语句定义了不同的数据段、数据库、表、列、索引等数据库对象。
    • DML语句:数据操纵语句,用于添加、删除、更新、查询数据库记录,并检查数据完整性。
    • DCL语句:数据控制语句,用于控制不同数据段直接许可和访问级别的语句。
  • 数据完整性
    • 在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型、约束。
  • 数据类型
  • 常用的数据类型
    • 数值类型
    • 日期时间类型
    • 字符串类型
  • 数值类型
数据类型有符号范围
TINYINT(size)-128 ~ 127
SMALLINT(size)-32768 ~ 32767
MEDIUMINT(size)-8388608 ~ 8388607
INT(size)-2147483648 ~ 2147483647
BIGINT(size)-9223372036854775808~9223372036854775807
小数类型描述
FLOAT(aize)带有浮动小数点的小数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。
DOUBLE(size)带有浮动小数点的大数字。在括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。
DECIMAL(size)作为字符串存储的 DOUBLE 类型,允许固定的小数点。(定点数类型)
字符串类型字节大小实例
CHAR(size)0-255char(3)输入’ab’,实际存储为’ab ‘,输入’abcd’,实际存储为’abc’
VARCHAR(size)0-65535varchar(3)输入’ab’,实际存储为’ab’,输入’abcd’,实际存储为’abc’
  • 枚举类型

    • 枚举类型英文为ENUM,对1~255个成员的枚举需要1个字节存储
    • 对于255~65535个成员,需要2个字节存储
    • 最多允许65535个成员
    • 创建方式:enum(“M”,“F”)
  • 日期类型

数据类型描述
DATE()日期。格式:YYYY-MM-DD
DATETME()日期和时间的组合。格式:YYYY-MM-DD HH:MM:SS
TIME()时间。格式:HH:MM:SS
YEAR()2 位或 4 位格式的年。4 位格式:1901 到 2155。 2 位格式:70 到 69,表示从 1970 到 2069
TIMESTAMP时间戳。格式:YYYY-MM-DD HH:MM:SS
  • 注意

    • decimal表示定点小数,如decimal(5,2)表示共存5位数,小数占2位。不写则默认为decimal(10,0)
    • char表示固定长度的字符串,如char(3),如果填充’ab’时会补一个空格为’ab ’
    • varchar表示可变长度的字符串,如varchar(3),填充’ab’时就会存储’ab’
    • 对于图片、音频、视频等文件,不存储在数据库中,而是上传到某个服务器上,然后在表中存储这个文件的保存路径
    • 枚举类型不区分大小写
  • 约束

    • 主键primary key:物理上存储的顺序
    • 非空not null:此字段不允许填写空值
    • 惟一unique:此字段的值不允许重复
    • 默认default:当不填写此值时会使用默认值,如果填写时以填写为准
    • 外键foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python 中嵌入 SQL,可以使用多种方法,其中一种常见的方法是使用 Python 的标准库 sqlite3。SQLite 是一种轻量级的关系型数据库,它可以在 Python 中直接使用,而无需安装额外的软件。 以下是一个简单的示例,演示如何在 Python 中创建一个 SQLite 数据库,并向其中插入数据: ``` import sqlite3 # 连接到数据库(如果不存在则创建) conn = sqlite3.connect('example.db') # 创建一个表 conn.execute('''CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER NOT NULL);''') # 插入一些数据 conn.execute("INSERT INTO users (name, age) VALUES ('Alice', 25)") conn.execute("INSERT INTO users (name, age) VALUES ('Bob', 30)") conn.execute("INSERT INTO users (name, age) VALUES ('Charlie', 35)") # 提交更改并关闭连接 conn.commit() conn.close() ``` 在上面的示例中,我们首先使用 `sqlite3.connect()` 函数连接到数据库。如果该数据库不存在,则会自动创建它。然后,我们使用 `conn.execute()` 函数执行 SQL 查询,以创建一个名为 `users` 的表,并向其中插入一些数据。最后,我们使用 `conn.commit()` 函数提交更改,并使用 `conn.close()` 函数关闭连接。 除了 SQLite,还有许多其他的嵌入式 SQL 数据库可以在 Python 中使用,如 PostgreSQL、MySQL 等。每种数据库都有自己的 Python 客户端库,可以使用相应的库来连接和操作数据库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WSZFSNFK

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值