En este artículo, discutiremos cómo podemos actualizar datos en tablas en la base de datos SQLite usando el módulo Python – sqlite3.
La declaración UPDATE en SQL se usa para actualizar los datos de una tabla existente en la base de datos. Podemos actualizar columnas individuales, así como múltiples columnas usando la instrucción UPDATE según nuestro requisito.
Sintaxis:
ACTUALIZAR table_name SET columna1 = valor1, columna2 = valor2,…
DONDE condición;
En la sintaxis anterior, la declaración SET se usa para establecer nuevos valores para la columna en particular, y la cláusula WHERE se usa para seleccionar las filas para las que se necesitan actualizar las columnas.
A continuación se muestran algunos ejemplos que muestran cómo actualizar datos en una tabla de SQLite.
Ejemplo 1: programa Python SQLite para actualizar una columna en particular. En este ejemplo, primero crearemos una tabla EMPLEADO e insertaremos valores en ella. Entonces vamos a fijar en 5000 los ingresos de los empleados cuya edad sea menor de 25
Python3
# Import module import sqlite3 # Connecting to sqlite conn = sqlite3.connect('gfg1.db') # Creating a cursor object using # the cursor() method cursor = conn.cursor() # Creating table table = """CREATE TABLE EMPLOYEE(FIRST_NAME VARCHAR(255), LAST_NAME VARCHAR(255),AGE int, SEX VARCHAR(255), INCOME int);""" cursor.execute(table) # Queries to INSERT records. cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Anand', 'Choubey', 25, 'M', 10000)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Mukesh', 'Sharma', 20, 'M', 9000)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Ankit', 'Pandey', 24, 'M', 6300)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Subhdra ', 'Singh', 26, 'F', 8000)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Tanu', 'Mishra', 24, 'F', 6500)''') # Display data inserted print("EMPLOYEE Table: ") data = cursor.execute('''SELECT * FROM EMPLOYEE''') for row in data: print(row) # Updating cursor.execute('''UPDATE EMPLOYEE SET INCOME = 5000 WHERE Age<25;''') print('\nAfter Updating...\n') # Display data print("EMPLOYEE Table: ") data = cursor.execute('''SELECT * FROM EMPLOYEE''') for row in data: print(row) # Commit your changes in the database conn.commit() # Closing the connection conn.close()
Producción:
SQLite:
Ejemplo 2: En este programa creamos una tabla similar a la del ejemplo anterior. Aquí asignamos la edad de las empleadas a 0.
Python3
# Import module import sqlite3 # Connecting to sqlite conn = sqlite3.connect('geeks1.db') # Creating a cursor object using the cursor() method cursor = conn.cursor() # Creating table table = """CREATE TABLE EMPLOYEE(FIRST_NAME VARCHAR(255), LAST_NAME VARCHAR(255),AGE int, SEX VARCHAR(255), INCOME int);""" cursor.execute(table) # Queries to INSERT records. cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Anand', 'Choubey', 25, 'M', 10000)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Mukesh', 'Sharma', 20, 'M', 9000)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Ankit', 'Pandey', 24, 'M', 6300)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Subhdra ', 'Singh', 26, 'F', 8000)''') cursor.execute( '''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) VALUES ('Tanu', 'Mishra', 24, 'F', 6500)''') # Display data inserted print("EMPLOYEE Table: ") data = cursor.execute('''SELECT * FROM EMPLOYEE''') for row in data: print(row) # Updating cursor.execute('''UPDATE EMPLOYEE SET AGE = 0 WHERE SEX='F';''') print('\nAfer Updating...\n') # Display data print("EMPLOYEE Table: ") data = cursor.execute('''SELECT * FROM EMPLOYEE''') for row in data: print(row) # Commit your changes in the database conn.commit() # Closing the connection conn.close()
Producción:
SQLite:
Ejemplo 3: en el siguiente programa, actualizamos varias columnas usando la instrucción UPDATE. En este ejemplo, primero crearemos una tabla STAFF e insertaremos valores en ella. Luego vamos a actualizar todas las columnas, es decir, todos los atributos del personal cuyo departamento es Informática.
Python3
# Import module import sqlite3 # Connecting to sqlite conn = sqlite3.connect('gfg3.db') # Creating a cursor object using the cursor() method cursor = conn.cursor() # Creating table table ="""CREATE TABLE STAFF(NAME VARCHAR(255), AGE int, DEPARTMENT VARCHAR(255));""" cursor.execute(table) # Queries to INSERT records. cursor.execute('''INSERT INTO STAFF VALUES('Anand', 45, 'Chemistry')''') cursor.execute('''INSERT INTO STAFF VALUES('Ravi', 32, 'Physics')''') cursor.execute('''INSERT INTO STAFF VALUES('Chandini', 32, 'Computer')''') cursor.execute('''INSERT INTO STAFF VALUES('Latika', 40, 'Maths')''') # Display data inserted print("STAFF Table: ") data=cursor.execute('''SELECT * FROM STAFF''') for row in data: print(row) # Updating cursor.execute('''UPDATE STAFF SET NAME = 'Ram', AGE = 30, DEPARTMENT = 'Biology' WHERE DEPARTMENT = 'Computer';''') print('\nAfter Updating...\n') # Display data print("STAFF Table: ") data=cursor.execute('''SELECT * FROM STAFF''') for row in data: print(row) # Commit your changes in the database conn.commit() # Closing the connection conn.close()
Producción:
SQLite:
Ejemplo 4: En el siguiente programa creamos la tabla anterior y actualizamos el nombre y la edad del personal cuyo departamento es Química.
Python3
# Import module import sqlite3 # Connecting to sqlite conn = sqlite3.connect('gfg4.db') # Creating a cursor object using the cursor() method cursor = conn.cursor() # Creating table table ="""CREATE TABLE STAFF(NAME VARCHAR(255), AGE int, DEPARTMENT VARCHAR(255));""" cursor.execute(table) # Queries to INSERT records. cursor.execute('''INSERT INTO STAFF VALUES('Anand', 45, 'Chemistry')''') cursor.execute('''INSERT INTO STAFF VALUES('Ravi', 32, 'Physics')''') cursor.execute('''INSERT INTO STAFF VALUES('Chandini', 32, 'Computer')''') cursor.execute('''INSERT INTO STAFF VALUES('Latika', 40, 'Maths')''') # Display data inserted print("STAFF Table: ") data=cursor.execute('''SELECT * FROM STAFF''') for row in data: print(row) # Updating cursor.execute('''UPDATE STAFF SET NAME = 'Chandini', AGE = 32 WHERE DEPARTMENT = 'Chemistry';''') print('\nAfter Updating...\n') # Display data print("STAFF Table: ") data=cursor.execute('''SELECT * FROM STAFF''') for row in data: print(row) # Commit your changes in the database conn.commit() # Closing the connection conn.close()
Producción:
SQLite:
Ejemplo 5: El siguiente programa muestra el uso de la declaración UPDATE sin la declaración WHERE. En este programa, creamos la tabla ESTUDIANTE e insertamos valores en ella. Después de eso, actualizamos la columna SECCIÓN de todos los estudiantes asignándola a X.
Python3
# Import module import sqlite3 # Connecting to sqlite conn = sqlite3.connect('gfg5.db') # Creating a cursor object using the cursor() method cursor = conn.cursor() # Creating table table ="""CREATE TABLE STUDENT(NAME VARCHAR(255), CLASS VARCHAR(255), SECTION VARCHAR(255));""" cursor.execute(table) # Queries to INSERT records. cursor.execute('''INSERT INTO STUDENT VALUES ('Raju', '7th', 'A')''') cursor.execute('''INSERT INTO STUDENT VALUES ('Shyam', '8th', 'B')''') cursor.execute('''INSERT INTO STUDENT VALUES ('Baburao', '9th', 'C')''') # Display data inserted print("STUDENT Table: ") data=cursor.execute('''SELECT * FROM STUDENT''') for row in data: print(row) # Updating cursor.execute('''UPDATE STUDENT SET SECTION = 'X';''') print('\nAfter Updating...\n') # Display data print("STUDENT Table: ") data=cursor.execute('''SELECT * FROM STUDENT''') for row in data: print(row) # Commit your changes in the database conn.commit() # Closing the connection conn.close()
Producción:
SQLite:
Ejemplo 6: en el siguiente programa, creamos una tabla ESTUDIANTE simple y actualizamos todos los datos en ella usando solo la consulta ACTUALIZAR y CONFIGURAR.
Python3
# Import module import sqlite3 # Connecting to sqlite conn = sqlite3.connect('gfg6.db') # Creating a cursor object using the cursor() method cursor = conn.cursor() # Creating table table ="""CREATE TABLE STUDENT(NAME VARCHAR(255), CLASS VARCHAR(255), SECTION VARCHAR(255));""" cursor.execute(table) # Queries to INSERT records. cursor.execute('''INSERT INTO STUDENT VALUES ('Raju', '7th', 'A')''') cursor.execute('''INSERT INTO STUDENT VALUES ('Shyam', '8th', 'B')''') cursor.execute('''INSERT INTO STUDENT VALUES ('Baburao', '9th', 'C')''') # Display data inserted print("STUDENT Table: ") data=cursor.execute('''SELECT * FROM STUDENT''') for row in data: print(row) # Updating cursor.execute('''UPDATE STUDENT SET NAME = 'X', CLASS = 'Y', SECTION = 'Z';''') print('\nAfter Updating...\n') # Display data print("STUDENT Table: ") data=cursor.execute('''SELECT * FROM STUDENT''') for row in data: print(row) # Commit your changes in the database conn.commit() # Closing the connection conn.close()
Producción:
SQLite:
Publicación traducida automáticamente
Artículo escrito por riturajsaha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA