Tutoriel classi...SE CONNECTER
Tutoriel classique SQLite
auteur:php.cn  temps de mise à jour:2022-04-13 17:05:02

Type de données SQLite


Le type de données SQLite est un attribut utilisé pour spécifier le type de données de n'importe quel objet. Chaque colonne, variable et expression dans SQLite est associée à un type de données.

Vous pouvez utiliser ces types de données lors de la création d'un tableau. SQLite utilise un système de types dynamiques plus général. Dans SQLite, le type de données d'une valeur est lié à la valeur elle-même, et non à son conteneur.

Classes de stockage SQLite

Chaque valeur stockée dans une base de données SQLite possède l'une des classes de stockage suivantes :

存储类描述
NULL值是一个 NULL 值。
INTEGER值是一个带符号的整数,根据值的大小存储在 1、2、3、4、6 或 8 字节中。
REAL值是一个浮点值,存储为 8 字节的 IEEE 浮点数字。
TEXT值是一个文本字符串,使用数据库编码(UTF-8、UTF-16BE 或 UTF-16LE)存储。
BLOB值是一个 blob 数据,完全根据它的输入存储。

Les classes de stockage de SQLite sont légèrement plus petites que Data les types sont plus généraux. La classe de stockage INTEGER, par exemple, contient 6 types de données entières différents de longueurs variables.

Types d'affinité SQLite

SQLite prend en charge le concept d'affinité de type sur les colonnes. N'importe quelle colonne peut toujours stocker n'importe quel type de données, mais la classe de stockage préférée de la colonne est son affinité. Dans une base de données SQLite3, les colonnes de chaque table se voient attribuer l'un des types d'affinité suivants :

Affinity描述
TEXT该列使用存储类 NULL、TEXT 或 BLOB 存储所有数据。
NUMERIC该列可以包含使用所有五个存储类的值。
INTEGER与带有 NUMERIC affinity 的列相同,在 CAST 表达式中带有异常。
REAL与带有 NUMERIC affinity 的列相似,不同的是,它会强制把整数值转换为浮点表示。
NONE带有 affinity NONE 的列,不会优先使用哪个存储类,也不会尝试把数据从一个存储类强制转换为另一个存储类。

SQLite Affinity et noms de types

Le tableau suivant répertorie les différents noms de types de données qui peuvent être utilisés lors de la création de tables SQLite3, et montre également l'application Affinity correspondante :

< /tr>
Type de donnéesAffinité
  • 数据类型Affinity
    • INT

    • INTEGER

    • TINYINT

    • SMALLINT

    • MEDIUMINT

    • BIGINT

    • UNSIGNED BIG INT

    • INT2

    • INT8

    INTEGER
    • CHARACTER(20)

    • VARCHAR(255)

    • VARYING CHARACTER(255)

    • NCHAR(55)

    • NATIVE CHARACTER(70)

    • NVARCHAR(100)

    • TEXT

    • CLOB

    TEXT
    • BLOB

    • no datatype specified

    NONE
    • REAL

    • DOUBLE

    • DOUBLE PRECISION

    • FLOAT

    REAL
    • NUMERIC

    • DECIMAL(10,5)

    • BOOLEAN

    • DATE

    • DATETIME

    NUMERIC
    INT

  • INTEGER

  • < li>

    TINYINT

  • SMALLINT

  • MEDIUMINT
    存储类日期格式
    TEXT格式为 "YYYY-MM-DD HH:MM:SS.SSS" 的日期。
    REAL从公元前 4714 年 11 月 24 日格林尼治时间的正午开始算起的天数。
    INTEGER从 1970-01-01 00:00:00 UTC 算起的秒数。
  • BIGINT

    < /li>
  • GRAND INT NON SIGNÉ
  • <🎜>INT2<🎜>
  • <🎜>INT8<🎜>
  • < /ul >
ENTIER
  • <🎜>CARACTÈRE(20)<🎜 >< /li>
  • <🎜>VARCHAR(255)<🎜>
  • <🎜>CARACTÈRE VARIABLE(255)<🎜>
  • <🎜>NCHAR(55) <🎜 >
  • <🎜>CARACTÈRE NATIF(70)<🎜>
  • <🎜>NVARCHAR(100)<🎜>
  • <🎜>TEXTE< 🎜>
  • <🎜>CLOB<🎜>
TEXT
  • <🎜>BLOB<🎜>
  • <🎜>aucun type de données spécifié<🎜>
AUCUN< /td>
  • <🎜>REAL<🎜>
  • <🎜>DOUBLE< 🎜>
  • <🎜>DOUBLE PRÉCISION<🎜>
  • <🎜>FLOTTEUR<🎜>
RÉEL
  • <🎜>NUMÉRIQUE<🎜>
  • <🎜>DÉCIMAL(10,5) <🎜 >
  • <🎜>BOOLÉEN<🎜>
  • <🎜>DATE<🎜>
  • <🎜>DATETIME<🎜>
  • < /ul >
NUMERIC
<🎜>Type de données booléen <🎜><🎜>SQLite n'a pas de classe de stockage booléenne distincte. Au lieu de cela, les valeurs booléennes sont stockées sous forme d'entiers 0 (faux) et 1 (vrai). <🎜><🎜>Types de données Date et Heure <🎜><🎜>SQLite n'a pas de classe de stockage distincte pour stocker les dates et/ou les heures, mais SQLite peut stocker les dates et les heures sous forme de valeurs TEXT, REAL ou INTEGER. <🎜><🎜><🎜>Vous pouvez stocker la date et l'heure dans l'un des formats ci-dessus, et vous pouvez utiliser les fonctions de date et d'heure intégrées pour convertir librement entre différents formats. <🎜><🎜><🎜>