📜  使用Python的SQL 1

📅  最后修改于: 2020-04-10 05:07:46             🧑  作者: Mango

在本文中,讨论了与Python程序的数据库连接。在任何编程语言中,将程序与数据库连接都被认为是一项艰巨的任务。它用于将应用程序的前端与后端数据库连接。Python及其本地内置模块也使这件事变得容易。
这需要对SQL的基本了解。
在这里,我们将连接SQLite与Python。Python具有SQLite的本机库。让我们解释一下它是如何工作的。

  1. 要使用SQLite,我们必须导入sqlite3。
  2. 然后,使用connect()方法创建一个连接,并传递要访问的数据库的名称(如果存在具有该名称的文件),它将打开该文件。否则,Python将使用给定名称创建文件。
  3. 此后,将调用游标对象以能够向SQL发送命令。游标Cursor是一种用于遍历和获取数据库记录的控制结构。Cursor在使用Python方面起着重要作用。所有命令将仅使用Cursor对象执行。
  4. 要在数据库中创建表,请创建一个对象并在其中添加带有注释的SQL命令。示例:-sql_comm =“ SQL语句”
  5. 而且执行命令非常容易。调用游标方法execute并将sql命令的名称作为参数传递给它。将许多命令另存为sql_comm并执行它们。执行完所有活动后,通过提交更改将更改保存到文件中,然后断开连接。
    # Python代码演示表创建和使用SQL插入
    # 导入模块
    import sqlite3
    # 连接到数据库
    connection = sqlite3.connect("myTable.db")
    # cursor
    crsr = connection.cursor()
    # SQL命令在数据库中创建表
    sql_command = """CREATE TABLE emp (
    staff_number INTEGER PRIMARY KEY,
    fname VARCHAR(20),
    lname VARCHAR(30),
    gender CHAR(1),
    joining DATE);"""
    # 执行语句
    crsr.execute(sql_command)
    # SQL命令在表中插入数据
    sql_command = """INSERT INTO emp VALUES (23, "Rishabh", "Bansal", "M", "2014-03-28");"""
    crsr.execute(sql_command)
    # 另一个SQL命令将数据插入表中
    sql_command = """INSERT INTO emp VALUES (1, "Bill", "Gates", "M", "1980-10-28");"""
    crsr.execute(sql_command)
    # 将更改保存在文件中。永远不要跳过.
    # 如果我们跳过此步骤,则什么都不会保存在数据库中.
    connection.commit()
    # 关闭连接
    connection.close()

    在本节中,我们讨论了如何创建表以及如何在数据库中添加新行。
    从记录中获取数据就像插入数据一样简单。execute方法使用SQL命令通过“ Select * from table_name”从表中获取所有数据,所有表数据都可以以列表的形式在一个对象中获取。

    # Python代码演示SQL获取数据.
    # 导入模块
    import sqlite3
    # 与myTable数据库连接
    connection = sqlite3.connect("myTable.db")
    # 光标对象
    crsr = connection.cursor()
    # 执行命令以从表emp中获取所有数据
    crsr.execute("SELECT * FROM emp")
    # 将所有提取的数据存储在ans变量中
    ans= crsr.fetchall()
    # 循环打印所有数据
    for i in ans:
        print(i)

    应该注意的是,将要创建的数据库文件将与Python文件位于同一文件夹中。如果我们希望更改文件的路径,请在打开文件时更改路径。