SQLite Python: Excluindo Dados

Resumo : este tutorial mostra como excluir dados do banco de dados SQLite de um programa Python usando o módulo sqlite3.

Para excluir dados do banco de dados SQLite de um programa Python, você usa as seguintes etapas:

  1. Primeiro, estabeleça uma conexão com o banco de dados SQLite criando um Connectionobjeto usando a connect()função.
  2. Segundo, para executar uma DELETEinstrução, você precisa criar um Cursorobjeto usando o cursor()método do Connectionobjeto.
  3. Terceiro, execute a  DELETEinstrução usando o execute()método do Cursorobjeto. Caso queira passar os argumentos para a instrução, use um ponto de interrogação ( ?) para cada argumento.

create_connection()função a seguir estabelece uma conexão de banco de dados com um banco de dados SQLite especificado por um nome de arquivo de banco de dados:

def create_connection(db_file):
    """ create a database connection to the SQLite database
        specified by the db_file
    :param db_file: database file
    :return: Connection object or None
    """
    conn = None
    try:
        conn = sqlite3.connect(db_file)
    except Error as e:
        print(e)

    return connLinguagem de código:  Python  ( python )

A delete_task()função a seguir exclui uma tarefa da taskstabela por id.

def delete_task(conn, id):
    """
    Delete a task by task id
    :param conn:  Connection to the SQLite database
    :param id: id of the task
    :return:
    """
    sql = 'DELETE FROM tasks WHERE id=?'
    cur = conn.cursor()
    cur.execute(sql, (id,))
    conn.commit()Linguagem de código:  Python  ( python )

A delete_all_tasks()função a seguir exclui todas as linhas da taskstabela.

def delete_all_tasks(conn):
    """
    Delete all rows in the tasks table
    :param conn: Connection to the SQLite database
    :return:
    """
    sql = 'DELETE FROM tasks'
    cur = conn.cursor()
    cur.execute(sql)
    conn.commit()Linguagem de código:  Python  ( python )

Esta main()função chama a create_connection()função e a delete_task()função para excluir a tarefa com id 2 da taskstabela:

def main():
    database = r"C:\sqlite\db\pythonsqlite.db"

    # create a database connection
    conn = create_connection(database)
    with conn:
        delete_task(conn, 2);
        # delete_all_tasks(conn);


if __name__ == '__main__':
    main()Linguagem de código:  Python  ( python )

Aqui está o programa completo:

import sqlite3
from sqlite3 import Error


def create_connection(db_file):
    """ create a database connection to the SQLite database
        specified by the db_file
    :param db_file: database file
    :return: Connection object or None
    """
    conn = None
    try:
        conn = sqlite3.connect(db_file)
    except Error as e:
        print(e)

    return conn


def delete_task(conn, id):
    """
    Delete a task by task id
    :param conn:  Connection to the SQLite database
    :param id: id of the task
    :return:
    """
    sql = 'DELETE FROM tasks WHERE id=?'
    cur = conn.cursor()
    cur.execute(sql, (id,))
    conn.commit()


def delete_all_tasks(conn):
    """
    Delete all rows in the tasks table
    :param conn: Connection to the SQLite database
    :return:
    """
    sql = 'DELETE FROM tasks'
    cur = conn.cursor()
    cur.execute(sql)
    conn.commit()


def main():
    database = r"C:\sqlite\db\pythonsqlite.db"

    # create a database connection
    conn = create_connection(database)
    with conn:
        delete_task(conn, 2);
        # delete_all_tasks(conn);


if __name__ == '__main__':
    main()Linguagem de código:  Python  ( python )

Observe que você pode comentar/descomentar a chamada de função na main()função para testar cada função de exclusão individualmente.

Neste tutorial, você aprendeu como excluir dados do banco de dados SQLite de um programa Python usando o módulo sqlite3.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *