¿Cómo modificar una tabla SQLite usando Python?
Alterar una tabla SQLite es una tarea común cuando se trabaja con bases de datos y se puede realizar fácilmente usando Python. SQLite es un conocido sistema de gestión de bases de datos relacionales de código abierto que se utiliza para almacenar datos en archivos locales. En este artículo, veremos cómo modificar una tabla SQLite en Python usando el comando ALTER TABLE para agregar, editar o eliminar columnas de una tabla existente.
Seguiremos los pasos necesarios, incluido el establecimiento de una conexión a la base de datos SQLite, la creación de un objeto de cursor, la ejecución de la instrucción ALTER TABLE, la confirmación de los cambios y el cierre de una conexión a la base de datos.
SQLite
SQLite en Python se refiere al módulo Python SQLite, que proporciona una interfaz para acceder a bases de datos SQLite desde programas Python. SQLite es un sistema de gestión de bases de datos relacionales de código abierto ampliamente utilizado. Se utiliza para almacenar datos en archivos locales y ocupa poco espacio, lo que lo hace ideal para aplicaciones pequeñas y medianas.
El módulo SQLite de Python proporciona una forma sencilla de trabajar con bases de datos SQLite, permitiendo a los desarrolladores modificar, crear y consultar bases de datos SQLite directamente desde su código Python. El módulo SQLite viene preinstalado con Python, lo que lo hace fácil de usar y accesible para muchos desarrolladores. SQLite se usa ampliamente en aplicaciones web y móviles, así como para proyectos pequeños y medianos, debido a su tamaño reducido y su interfaz fácil de usar.
Importando el módulo
Para importar el módulo SQLite en Python, copie el siguiente código en el editor:
import sqlite3
El módulo sqlite3 es parte de la biblioteca estándar de Python y viene preinstalado con Python. Proporciona una interfaz para acceder a bases de datos SQLite desde código Python.
El módulo sqlite3 ahora está importado, podemos usar las funciones y clases de sqlite3 para interactuar con bases de datos SQLite, incluido el establecimiento de conexiones a bases de datos, la recuperación de datos y la ejecución de comandos SQL.
Pasos para modificar la tabla SQLite usando Python
Para modificar una tabla SQLite, necesitamos usar la declaración ALTER TABLE. Esta declaración nos permite agregar, modificar o eliminar columnas de una tabla existente. Podemos ejecutar esta declaración usando el módulo Python SQLite.
Hemos utilizado Sublime Text como editor de texto y todas las salidas estarán allí en la ventana de la terminal mientras se ejecuta el archivo sublime de Python en particular.
Estos son los pasos para modificar una tabla SQLite usando Python.
Paso 1
Cree un nuevo archivo con extensión .py. Importe el módulo sqlite.
import sqlite3
Paso 2
El siguiente paso es conectarse a la base de datos SQLite utilizando el método connect() proporcionado por el módulo sqlite3 en Python. Este método toma la ruta al archivo de la base de datos como argumento y devuelve un objeto de conexión.
conn=sqlite3.connect('database_name.db')
Paso 3
El siguiente paso es crear un objeto de cursor utilizando el método cursor() proporcionado por el objeto Connection. El objeto de cursor se utiliza para ejecutar declaraciones SQL en la base de datos.
c= conn.cursor()
Etapa 4
El siguiente paso es crear una nueva tabla y ejecutarla utilizando el método ejecutar() del objeto cursor. La declaración toma el nombre de la tabla y define el nombre de las columnas con los tipos de datos que desea en la tabla.
c.execute(""CREATE TABLE table_name(column names with there datatypes)"")
Paso 5
El siguiente paso es insertar los valores en la tabla y ejecutarlos utilizando el método ejecutar() del objeto cursor.
c.execute("INSERT INTO table_name VALUES (enter the values that you want to provide to the colummns of the table)")
Paso 6
Ahora, recuperaremos todas las filas de la tabla antes de modificarla y hacerle algunos cambios. Usaremos los métodos ejecutar() y fetchall() del objeto cursor que recuperará todas las filas de la tabla.
c.execute("SELECT * FROM table_name")
print(c.fetchall())
Paso 7
El comando ALTER TABLE se ejecutará en este paso. Para modificar una tabla, utilice la función ejecutar() del objeto cursor para ejecutar el comando ALTER TABLE. Como parámetros, las sentencias aceptan el nombre de la tabla y la columna a actualizar. Por ejemplo, para agregar una nueva columna a una tabla, podemos usar la siguiente declaración:
c.execute("ALTER TABLE table_name ADD COLUMN column_name datatype")
Paso 8
Ahora, recuperaremos todas las filas de la tabla después de haber modificado la tabla y haberle realizado algunos cambios. Usaremos los métodos ejecutar() y fetchall() del objeto cursor que recuperará todas las filas de la tabla.
c.execute("SELECT * FROM table_name")
print(c.fetchall())
Paso 9
Después de haber ejecutado la instrucción ALTER TABLE, necesitamos confirmar los cambios usando el método commit() del objeto Connection.
conn.commit()
Paso 10
Finalmente, necesitamos cerrar la conexión de la base de datos usando el método close() del objeto Connection.
conn.close()
Veamos un ejemplo para entenderlo mejor:
Ejemplo
import sqlite3
conn=sqlite3.connect('cust.db')
#create a cursor
c= conn.cursor()
#create a table
c.execute("""CREATE TABLE customers_table (first_name text,last_name text,email text)""")
#insert values in the columns of the table
c.execute("INSERT INTO customers_table VALUES ('Mary','Dakota','mdakota@gmail.com')")
c.execute("INSERT INTO customers_table VALUES ('Amy','Jackson','ajackson@gmail.com')")
#Printing all the values before altering the table
print("Table before using ALTER ..")
c.execute("SELECT * FROM customers_table")
print(c.fetchall())
#Alter the table
c.execute("ALTER TABLE customers_table ADD COLUMN UserName CHAR(25)")
#Print the table after altering
print("Table after using ALTER ..")
c.execute("SELECT * FROM customers_table")
print(c.fetchall())
print("Command executed successfully...")
conn.commit()
#close our connection
conn.close()
Producción
Conclusión
En conclusión, alterar una tabla SQLite usando Python es un proceso simple. Podemos usar la instrucción ALTER TABLE para agregar, eliminar o modificar columnas de una tabla existente. Siguiendo los pasos anteriores, podemos modificar fácilmente una tabla SQLite usando Python.