DavinaT91 2014-08-13 06:48 采纳率: 0%
浏览 974

c扩展python 完成对数据库的查询并返回结果集

python对数据库的查询效率比较低,想通过C编写python的扩展,实现对数据库的查询,查询获得的多个结果集返回给python中的函数调用--C写python扩展时需要用到python中函数定义里面的参数 不知道怎么处理?开放平台window7 vs2010 python2.6.7+mysql5.6 由于之前没接触过 网上也没有搜到代码demo

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-02 11:23
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    可以使用python库pymysql来进行数据库操作。在Python中,你可以使用subprocess.Popen()来启动一个新的进程,并向它发送命令。然后,在这个新的进程中,你可以使用subprocess.PIPE来接收从数据库服务器发来的数据。

    以下是一个简单的例子:

    import subprocess
    import pymysql
    
    def execute_sql(sql):
        # 创建连接
        conn = pymysql.connect(host='localhost', user='root', password='password', db='test')
        cursor = conn.cursor()
    
        try:
            # 执行SQL语句
            cursor.execute(sql)
    
            # 获取所有数据
            results = cursor.fetchall()
            
            # 关闭连接
            conn.close()
    
            return results
        except Exception as e:
            print(e)
    

    在这个例子中,我们首先创建了一个MySQL连接。然后,我们执行了SQL语句(在这里是获取所有的列),并获取了所有的行。最后,我们关闭了连接。

    请注意,这只是一个基本的例子,你可能需要根据你的具体需求进行修改和优化。例如,你需要确保你的数据库服务器允许子进程访问,并且你的Python脚本可以在后台运行。

    评论

报告相同问题?