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

bookDatatyper

SQLite tilbyder flere datatyper, eller lagringsklasser, til at definere, hvilken type data der kan gemmes i en tabel. Selvom SQLite er dynamisk typet og ikke håndhæver strenge datatyper, genkender den fem primære affinitetstyper.

Oprettelse af en tabel med forskellige datatyper

Her er et eksempel på oprettelse af en tabel, der anvender forskellige 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 tillader lagring af enhver type data i enhver kolonne, uanset den deklarerede type ved oprettelsen af tabellen (undtagen for kolonner med INTEGER PRIMARY KEY). Den anvender også en tilgang, der hjælper med at fortolke og lagre data korrekt, hvilket sikrer, at alt fungerer problemfrit og 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

Dette eksempel demonstrerer, hvordan SQLite tillader indsættelse af forskellige datatyper i den samme kolonne, selvom kolonnen er deklareret som INTEGER. For eksempel indsættes følgende data i kolonnen age (deklareret som INTEGER):

  • Et heltal (25);
  • En tekstværdi ('Thirty');
  • En floatværdi (30.5).

SQLite begrænser ikke de datatyper, du kan indsætte i en kolonne, takket være dets dynamiske typningssystem. Denne tilgang gør det muligt at gemme forskellige datatyper i en enkelt kolonne uden fejl.

1. I SQLite, hvilken datatype bruges til at repræsentere fraværet af en værdi?

2. Hvad sker der, hvis du forsøger at indsætte en tekstværdi i en INTEGER-kolonne i SQLite?

question mark

I SQLite, hvilken datatype bruges til at repræsentere fraværet af en værdi?

Select the correct answer

question mark

Hvad sker der, hvis du forsøger at indsætte en tekstværdi i en INTEGER-kolonne i SQLite?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 2

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain what "affinity types" mean in SQLite?

What happens if I try to insert incompatible data into an INTEGER PRIMARY KEY column?

Can you give more examples of how dynamic typing works in SQLite?

Awesome!

Completion rate improved to 4.76

bookDatatyper

Stryg for at vise menuen

SQLite tilbyder flere datatyper, eller lagringsklasser, til at definere, hvilken type data der kan gemmes i en tabel. Selvom SQLite er dynamisk typet og ikke håndhæver strenge datatyper, genkender den fem primære affinitetstyper.

Oprettelse af en tabel med forskellige datatyper

Her er et eksempel på oprettelse af en tabel, der anvender forskellige 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 tillader lagring af enhver type data i enhver kolonne, uanset den deklarerede type ved oprettelsen af tabellen (undtagen for kolonner med INTEGER PRIMARY KEY). Den anvender også en tilgang, der hjælper med at fortolke og lagre data korrekt, hvilket sikrer, at alt fungerer problemfrit og 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

Dette eksempel demonstrerer, hvordan SQLite tillader indsættelse af forskellige datatyper i den samme kolonne, selvom kolonnen er deklareret som INTEGER. For eksempel indsættes følgende data i kolonnen age (deklareret som INTEGER):

  • Et heltal (25);
  • En tekstværdi ('Thirty');
  • En floatværdi (30.5).

SQLite begrænser ikke de datatyper, du kan indsætte i en kolonne, takket være dets dynamiske typningssystem. Denne tilgang gør det muligt at gemme forskellige datatyper i en enkelt kolonne uden fejl.

1. I SQLite, hvilken datatype bruges til at repræsentere fraværet af en værdi?

2. Hvad sker der, hvis du forsøger at indsætte en tekstværdi i en INTEGER-kolonne i SQLite?

question mark

I SQLite, hvilken datatype bruges til at repræsentere fraværet af en værdi?

Select the correct answer

question mark

Hvad sker der, hvis du forsøger at indsætte en tekstværdi i en INTEGER-kolonne i SQLite?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 2
some-alt