python函数返回数据库连接和游标

  • Post category:Python

Python连接数据库需要使用相应的数据库模块,如pymysql,psycopg2等。Python连接数据库通常分为两个步骤:连接数据库和获取游标。

1.连接数据库

连接数据库需要使用相应的模块和连接方法,具体语法如下:

import pymysql

conn = pymysql.connect(host="localhost", user="root", password="123456", database="test")

其中,参数说明如下:

  • host: 数据库主机地址,本机为localhost。
  • user: 数据库登录名。
  • password: 数据库登录密码。
  • database: 数据库名。

2.获取游标

连接成功后,需要获取游标才能执行数据库操作。游标类似于文件指针,可以在数据库中逐行遍历数据。

获取游标需要使用 connection对象的 cursor方法,具体语法如下:

import pymysql

conn = pymysql.connect(host="localhost", user="root", password="123456", database="test")
cursor = conn.cursor()

3.完整代码示例

下面是一个完整的示例代码,用于连接mysql数据库,并获取游标。其中,test是数据库名,user和password分别是登录名和密码,需要替换为实际的值。

import pymysql

def get_conn():
    conn = pymysql.connect(host="localhost", user="root", password="123456", database="test")
    return conn

def get_cursor(conn):
    cursor = conn.cursor()
    return cursor

if __name__ == "__main__":
    conn = get_conn()
    cursor = get_cursor(conn)
    sql = "SELECT * FROM students"
    cursor.execute(sql)
    results = cursor.fetchall()
    print(results)
    cursor.close()
    conn.close()

在以上示例中,get_conn函数用于创建并返回连接对象,get_cursor函数用于获取并返回游标对象。在main函数中,先执行get_conn和get_cursor函数获取连接和游标对象,然后通过游标对象执行SQL语句并获取结果,最后关闭游标和连接对象。

4.代码示例2:连接PostgreSQL数据库

连接PostgreSQL数据库的过程与连接mysql数据库类似,需要使用相应的模块和连接方法。下面是一个连接PostgreSQL数据库的示例代码:

import psycopg2

def get_conn():
    conn = psycopg2.connect(host="localhost", user="postgres", password="123456", database="test")
    return conn

def get_cursor(conn):
    cursor = conn.cursor()
    return cursor

if __name__ == "__main__":
    conn = get_conn()
    cursor = get_cursor(conn)
    sql = "SELECT * FROM students"
    cursor.execute(sql)
    results = cursor.fetchall()
    print(results)
    cursor.close()
    conn.close()

在以上示例中,get_conn函数用于创建并返回PostgreSQL连接对象,get_cursor函数用于获取并返回游标对象。在main函数中,先执行get_conn和get_cursor函数获取连接和游标对象,然后通过游标对象执行SQL语句并获取结果,最后关闭游标和连接对象。