1. 解决错误:Error binding parameter X - probably unsupported type

错误的意思是,绑定的属性错误,可能是不支持的类型

SQLite支持以下几种数据类型:NULL、INTEGER、REAL(浮点数字)、TEXT和BLOB。

Python会自动映射

int -> INTEGER

float -> REAL

str ->TEXT

然而,并非所有Python的数据类型都可以被SQLite支持。例如,字典(dict)、列表(list)不能

2. Sqlit支持的类型

SQLite数据库系统支持以下五种基本的数据类型:

  1. NULL:这种类型的值表示缺失的数据或未知的数据。
  2. INTEGER:这种类型的值是一个有符号的整数,根据值的大小,存储大小可以是1、2、3、4、6或8字节。
  3. REAL:这种类型的值是一个浮点值,存储为8字节的IEEE浮点数。
  4. TEXT:这种类型的值是一个文本字符串,存储使用数据库编码(UTF-8、UTF-16BE或UTF-16LE)。
  5. BLOB:这种类型的值是一个blob数据,即二进制大对象,存储的是二进制数据。

此外,SQLite支持类型别名(例如,允许你使用INT代替INTEGERVARCHAR代替TEXT等),并且你可以在创建表时为列指定几乎任何名称作为数据类型(例如,BOOLEANDATETIME等)。但是,这些自定义类型名称最终都会被映射到上述五种基本类型。