利用 Python 插入 Oracle 數據


 

# coding=utf-8   
''''' 
Created on 2020-01-05
 
@author: Mr. Zheng
'''

import json;
import urllib2
import sys
import cx_Oracle
import exceptions

# page=urllib2.urlopen("http://").read()  
# jsonVal = json.loads(page)   


def read_json_file(file_name):
    file_object = open(file_name)
    db = cx_Oracle.connect('用戶名', '密碼', 'ip:1521/oracle的serve_name')
    cursor = db.cursor()
    '''
    rows = cursor.execute('select * from table')
    for sz in rows:
        print sz
    '''

    try:
        all_the_text = file_object.read()
        jsonVal = json.loads(all_the_text)
        param = []
        for val in jsonVal:
            #print val["serverid"]
            #print val["server_name"]
            param.append((val["serverid"], "san_s" + val["serverid"], val["server_name"]))
            # cursor.execute('insert into game_server_name(server_id, server_name, chinese_name) values(:server_id, :2, :3)',(val["serverid"], "san_s" + val["serverid"], val["server_name"]))
            # cursor.execute("insert into game_server_name(server_id, server_name, chinese_name) values('a','b','c')")

        print param
        print len(param)
        cursor.prepare('insert into game_server_name(server_id, server_name, chinese_name) values(:1, :2, :3)') # 一次插入全部數據
        cursor.executemany(None, param)
        db.commit()
    except Exception, err:
        print err
    finally:
        cursor.close()        
        db.close()
        file_object.close()


def main():
    read_json_file('E:/android.json')
    read_json_file('E:/apple.json')


if __name__ == '__main__':
    main()

 

當只有一次參數的時候,也要把它寫成元組的形式:

例如:Cursor.execute(‘select name from user where id=:1’,(login_Id,)) 

千萬要注意: login_id 后面還帶有一個逗號


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM