Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Datatyper | Mer om SQLite
Databaser i Python

bookDatatyper

SQLite tillhandahåller flera datatyper, eller lagringsklasser, för att definiera vilken typ av data som kan lagras i en tabell. Även om SQLite är dynamiskt typad och inte tillämpar strikta datatyper, känner den igen fem primära affinitetstyper.

Skapa en tabell med olika datatyper

Här är ett exempel på hur man skapar en tabell som använder olika SQLite-datatyper:

CREATE TABLE example (
    id INTEGER PRIMARY KEY,      -- Integer (auto-increment if PRIMARY KEY)
    name TEXT NOT NULL,          -- Text field (mandatory)
    price REAL,                  -- Floating-point number
    data BLOB,                   -- Binary data
    created_at TEXT DEFAULT NULL -- Text field with NULL as default
);

SQLite tillåter att du lagrar data av vilken typ som helst i vilken kolumn som helst, oavsett den deklarerade typen när tabellen skapades (förutom kolumner med INTEGER PRIMARY KEY). Den använder också en metod som hjälper till att tolka och lagra data korrekt, vilket säkerställer att allt fungerar smidigt och effektivt.

1234567891011121314151617181920212223242526272829
import sqlite3 conn = sqlite3.connect('data.db') cursor = conn.cursor() # Creating the table cursor.execute(''' CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY, name TEXT, age INTEGER ) ''') # Inserting different types of data into the `age` column cursor.execute("INSERT INTO users (name, age) VALUES ('Alice', 25)") # standard value cursor.execute("INSERT INTO users (name, age) VALUES ('Bob', 'Thirty')") # text value in `INTEGER` column cursor.execute("INSERT INTO users (name, age) VALUES ('Charlie', 30.5)") # float value in `INTEGER` column # Retrieving all records from the table cursor.execute("SELECT * FROM users") rows = cursor.fetchall() # Printing the results for row in rows: print(row) # Closing the database connection conn.close()
copy

Detta exempel visar hur SQLite tillåter att olika typer av data infogas i samma kolumn, även om kolumnen är deklarerad som INTEGER. Till exempel, i kolumnen age (deklarerad som INTEGER), infogas följande data:

  • Ett heltal (25);
  • Ett textvärde ('Thirty');
  • Ett flyttal (30.5).

SQLite begränsar inte vilka datatyper du kan infoga i en kolumn tack vare dess dynamiska typningssystem. Detta tillvägagångssätt möjliggör lagring av olika datatyper i en och samma kolumn utan fel.

1. Vilken datatyp används i SQLite för att representera avsaknaden av ett värde?

2. Vad händer om du försöker infoga ett textvärde i en INTEGER-kolumn i SQLite?

question mark

Vilken datatyp används i SQLite för att representera avsaknaden av ett värde?

Select the correct answer

question mark

Vad händer om du försöker infoga ett textvärde i en INTEGER-kolumn i SQLite?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Awesome!

Completion rate improved to 4.76

bookDatatyper

Svep för att visa menyn

SQLite tillhandahåller flera datatyper, eller lagringsklasser, för att definiera vilken typ av data som kan lagras i en tabell. Även om SQLite är dynamiskt typad och inte tillämpar strikta datatyper, känner den igen fem primära affinitetstyper.

Skapa en tabell med olika datatyper

Här är ett exempel på hur man skapar en tabell som använder olika SQLite-datatyper:

CREATE TABLE example (
    id INTEGER PRIMARY KEY,      -- Integer (auto-increment if PRIMARY KEY)
    name TEXT NOT NULL,          -- Text field (mandatory)
    price REAL,                  -- Floating-point number
    data BLOB,                   -- Binary data
    created_at TEXT DEFAULT NULL -- Text field with NULL as default
);

SQLite tillåter att du lagrar data av vilken typ som helst i vilken kolumn som helst, oavsett den deklarerade typen när tabellen skapades (förutom kolumner med INTEGER PRIMARY KEY). Den använder också en metod som hjälper till att tolka och lagra data korrekt, vilket säkerställer att allt fungerar smidigt och effektivt.

1234567891011121314151617181920212223242526272829
import sqlite3 conn = sqlite3.connect('data.db') cursor = conn.cursor() # Creating the table cursor.execute(''' CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY, name TEXT, age INTEGER ) ''') # Inserting different types of data into the `age` column cursor.execute("INSERT INTO users (name, age) VALUES ('Alice', 25)") # standard value cursor.execute("INSERT INTO users (name, age) VALUES ('Bob', 'Thirty')") # text value in `INTEGER` column cursor.execute("INSERT INTO users (name, age) VALUES ('Charlie', 30.5)") # float value in `INTEGER` column # Retrieving all records from the table cursor.execute("SELECT * FROM users") rows = cursor.fetchall() # Printing the results for row in rows: print(row) # Closing the database connection conn.close()
copy

Detta exempel visar hur SQLite tillåter att olika typer av data infogas i samma kolumn, även om kolumnen är deklarerad som INTEGER. Till exempel, i kolumnen age (deklarerad som INTEGER), infogas följande data:

  • Ett heltal (25);
  • Ett textvärde ('Thirty');
  • Ett flyttal (30.5).

SQLite begränsar inte vilka datatyper du kan infoga i en kolumn tack vare dess dynamiska typningssystem. Detta tillvägagångssätt möjliggör lagring av olika datatyper i en och samma kolumn utan fel.

1. Vilken datatyp används i SQLite för att representera avsaknaden av ett värde?

2. Vad händer om du försöker infoga ett textvärde i en INTEGER-kolumn i SQLite?

question mark

Vilken datatyp används i SQLite för att representera avsaknaden av ett värde?

Select the correct answer

question mark

Vad händer om du försöker infoga ett textvärde i en INTEGER-kolumn i SQLite?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 2
some-alt