Python 使用 SQL
在本教程中,我们将学习如何使用**SQLite**数据库结合SQL和Python。Python内置模块可以连接SQLite数据库。我们将使用sqlite3模块连接Python和SQLite。
我们需要按照以下步骤连接SQLite数据库和Python。请仔细阅读这些步骤并编写程序。
- 导入sqlite3模块。
- 使用sqlite3.connect(db_name)方法创建连接,该方法将数据库名称作为参数。如果数据库文件不存在,则创建该文件;如果存在,则打开该文件。
- 使用conn.cursor()从连接中获取游标对象。它是Python和SQLite数据库之间的媒介。我们必须使用此游标对象来执行SQL命令。
以上三个步骤帮助我们创建与SQLite数据库的连接。这些步骤与Python中任何数据库的连接步骤类似。如果您对以上步骤有任何疑问,请参阅下面的代码。
示例
# importing the module import sqlite3 # creating an connection conn = sqlite3.connect("tutorialspoint.db") # db - database # Cursor object cursor = conn.cursor()
现在,我们已经与数据库建立了连接。让我们按照以下步骤使用SQL查询创建数据库。
- 编写SQL代码以创建具有列名称和类型的表。
- 使用cursor.execute()执行代码以在数据库中创建表。
- 编写SQL代码以向表中插入一些行。并像步骤一样执行它们。
- 使用conn.commit()方法提交更改以将其保存到文件中。
- 使用conn.close()方法关闭连接。
示例
# importing the module import sqlite3 # creating an connection conn = sqlite3.connect("tutorialspoint.db") # db - database # Cursor object cursor = conn.cursor() # code to create a databse table create_table_sql = """ CREATE TABLE students (id INTEGER PRIMARY KEY,first_name VARCHAR(20),last_nameVARCHAR(30), gender CHAR(1)); """ # executing the above SQL code cursor.execute(create_table_sql) # inserting data into the students table insert_student_one_sql = """INSERT INTO students VALUES (1, "John", "Hill", "M" " cursor.execute(insert_student_one_sql) insert_student_two_sql = """INSERT INTO students VALUES (2, "Jessy", "Hill", "F "" cursor.execute(insert_student_two_sql) insert_student_three_sql = """INSERT INTO students VALUES (3, "Antony", "Hill", );""" cursor.execute(insert_student_three_sql) # saving the changes using commit method of connection conn.commit() # closing the connection conn.close()
如果您在执行上述代码后没有收到任何错误,那么您就可以开始了。如何查看数据库表中的数据?让我们按照给定的步骤编写代码。
- 连接到数据库。
- 创建游标对象。
- 编写SQL查询以从表中获取所需的数据。
- 现在执行它。
- 游标对象将包含您想要的数据。使用fetchall()方法获取它。
- 通过打印它查看数据。
如果您有任何疑问,请查看下面的代码。
示例
# importing the module import sqlite3 # creating an connection conn = sqlite3.connect("tutorialspoint.db") # db - database # Cursor object cursor = conn.cursor() # SQL query to get all students data fetch_students_sql = """ SELECT * FROM students; """ # executing the SQL query cursor.execute(fetch_students_sql) # storing the data in a variable using fetchall() method students = cursor.fetchall() # a list of tuples # printing the data print(students)
输出
如果您执行上述程序,则会得到与输出类似的结果。
[(1, 'John', 'Hill', 'M'), (2, 'Jessy', 'Hill', 'F'), (3, 'Antony', 'Hill', 'M'
结论
现在,您可以开始在Python中使用数据库了。多练习才能更好地掌握。如果您对本教程有任何疑问,请在评论区提出。
广告