You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中执行Oracle查询并将结果插入新建Oracle表的语法是什么

方案1:同库场景最优(单条SQL直接完成,无需数据经过Python)

如果新旧表在同一个Oracle数据库下,直接执行INSERT + SELECT组合语句就行,性能最好,代码也最简单:

import cx_Oracle

# 替换为你自己的数据库连接信息
DB_USER = "你的用户名"
DB_PWD = "你的密码"
DB_HOST = "数据库IP"
DB_PORT = 1521
DB_SERVICE = "服务名"

# 建立连接
dsn = cx_Oracle.makedsn(DB_HOST, DB_PORT, service_name=DB_SERVICE)
with cx_Oracle.connect(user=DB_USER, password=DB_PWD, dsn=dsn) as conn:
    with conn.cursor() as cursor:
        # 注意:如果你的旧表字段名确实是attribute 3(中间带空格),需要写成"attribute 3"
        insert_sql = """
        INSERT INTO 你的新表名 (attribute1, attribute2, attribute3)
        SELECT attribute1, attribute2, attribute3 
        FROM mytable 
        WHERE qc_code = 'F'
        """
        cursor.execute(insert_sql)
        # 提交事务
        conn.commit()
        print(f"成功插入{cursor.rowcount}条数据")

如果还没安装cx_Oracle依赖,先执行pip install cx_Oracle安装即可。

方案2:数据经过Python处理(适合后续要加校验、转换等自定义逻辑)

如果后续你需要对查询出来的数据做清洗、转换再插入,就用先查后插的方式:

import cx_Oracle

DB_USER = "你的用户名"
DB_PWD = "你的密码"
DB_HOST = "数据库IP"
DB_PORT = 1521
DB_SERVICE = "服务名"

dsn = cx_Oracle.makedsn(DB_HOST, DB_PORT, service_name=DB_SERVICE)
with cx_Oracle.connect(user=DB_USER, password=DB_PWD, dsn=dsn) as conn:
    with conn.cursor() as cursor:
        # 1. 执行查询取数
        query_sql = "SELECT attribute1, attribute2, attribute3 FROM mytable WHERE qc_code = 'F'"
        cursor.execute(query_sql)
        data_list = cursor.fetchall()
        
        if not data_list:
            print("没有查询到符合条件的数据")
            exit()
        
        # 2. 批量插入新表
        insert_sql = "INSERT INTO 你的新表名 (attribute1, attribute2, attribute3) VALUES (:1, :2, :3)"
        # 批量插入比循环单条插性能高很多
        cursor.executemany(insert_sql, data_list)
        conn.commit()
        print(f"成功插入{len(data_list)}条数据")
注意事项
  • 你贴的查询语句里attribute 3中间有空格,如果是字段名本身带空格,SQL里需要用双引号包裹,写成"attribute 3",如果是输入时的笔误,改成实际的字段名即可
  • 所有占位的中文(用户名、密码、新表名等)都要替换成你自己的实际配置
  • 代码里用了with语句自动管理连接和游标资源,不用手动写关闭逻辑,避免资源泄漏

内容的提问来源于stack exchange,提问作者user7002207

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 05:45:00