Tipos de Datos
SQLite proporciona varios tipos de datos, o clases de almacenamiento, para definir el tipo de datos que se pueden almacenar en una tabla. Aunque SQLite utiliza tipado dinámico y no aplica tipos de datos estrictos, reconoce cinco principales tipos de afinidad.
Creación de una tabla con diferentes tipos de datos
A continuación, un ejemplo de cómo crear una tabla que utiliza varios tipos de datos en SQLite:
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 permite almacenar datos de cualquier tipo en cualquier columna, independientemente del tipo declarado al crear la tabla (excepto en columnas INTEGER PRIMARY KEY
). También utiliza un enfoque que ayuda a interpretar y almacenar los datos correctamente, garantizando que todo funcione de manera fluida y eficiente.
1234567891011121314151617181920212223242526272829import 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()
Este ejemplo demuestra cómo SQLite permite insertar diferentes tipos de datos en la misma columna, incluso si la columna está declarada como INTEGER
. Por ejemplo, en la columna age
(declarada como INTEGER
), se insertan los siguientes datos:
- Un entero (
25
); - Un valor de texto (
'Thirty'
); - Un valor flotante (
30.5
).
SQLite no restringe los tipos de datos que se pueden insertar en una columna, gracias a su sistema de tipado dinámico. Este enfoque permite almacenar una variedad de tipos de datos en una sola columna sin errores.
1. En SQLite, ¿qué tipo de dato se utiliza para representar la ausencia de un valor?
2. ¿Qué sucede si intentas insertar un valor de texto en una columna INTEGER en SQLite?
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 4.76
Tipos de Datos
Desliza para mostrar el menú
SQLite proporciona varios tipos de datos, o clases de almacenamiento, para definir el tipo de datos que se pueden almacenar en una tabla. Aunque SQLite utiliza tipado dinámico y no aplica tipos de datos estrictos, reconoce cinco principales tipos de afinidad.
Creación de una tabla con diferentes tipos de datos
A continuación, un ejemplo de cómo crear una tabla que utiliza varios tipos de datos en SQLite:
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 permite almacenar datos de cualquier tipo en cualquier columna, independientemente del tipo declarado al crear la tabla (excepto en columnas INTEGER PRIMARY KEY
). También utiliza un enfoque que ayuda a interpretar y almacenar los datos correctamente, garantizando que todo funcione de manera fluida y eficiente.
1234567891011121314151617181920212223242526272829import 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()
Este ejemplo demuestra cómo SQLite permite insertar diferentes tipos de datos en la misma columna, incluso si la columna está declarada como INTEGER
. Por ejemplo, en la columna age
(declarada como INTEGER
), se insertan los siguientes datos:
- Un entero (
25
); - Un valor de texto (
'Thirty'
); - Un valor flotante (
30.5
).
SQLite no restringe los tipos de datos que se pueden insertar en una columna, gracias a su sistema de tipado dinámico. Este enfoque permite almacenar una variedad de tipos de datos en una sola columna sin errores.
1. En SQLite, ¿qué tipo de dato se utiliza para representar la ausencia de un valor?
2. ¿Qué sucede si intentas insertar un valor de texto en una columna INTEGER en SQLite?
¡Gracias por tus comentarios!