首页 > 数据库 >python写入数据到oracle clob字段

python写入数据到oracle clob字段

时间:2023-04-11 09:48:42浏览次数:39  
标签:DATE clob python db remark ## str time oracle

 

环境:

Python:3.6.5

 

 

#!/usr/bin/env python
#coding=utf-8
import os, json, urllib, datetime, shutil
import time
import cx_Oracle

gl_mysql_server="192.168.1.118"
gl_user_name="hxl"
gl_password= "mysql"
gl_db_name="db_test"

##create table tb_test
##(
##id number not null primary key,
##name1 varchar(32),
##name2 varchar(32),
##name3 varchar(32),
##name4 varchar(32),
##name5 varchar(32),
##name6 varchar(32),
##createtime date default sysdate,
##modifytime date default sysdate
##);

##create table TB_OGG_TEST
##(
##  id          NUMBER not null,
##  create_time DATE default sysdate,
##  modify_time DATE default sysdate,
##  fbactid     VARCHAR2(12),
##  b655        DATE,
##  b656        DATE,
##  b676        DATE,
##  b677        DATE,
##  b678        DATE,
##  b679        DATE,
##  b680        DATE,
##  b681        DATE,
##  b682        DATE,
##  b683        DATE,
##  remark      clob
##)


def insert_data():
    db =  cx_Oracle.connect('hxl','oracle','192.168.1.101:1521/slnngk',encoding="UTF-8")
    # 得到一个可以执行SQL语句的光标对象
    cursor = db.cursor()

    db.autocommit=False ## 关闭字自动提交

    for i in range(184961, 200001):
        str_i = str(i)
        curr_time = datetime.datetime.now()
        time_str = datetime.datetime.strftime(curr_time, '%Y-%m-%d %H:%M:%S')

        l_id = i
        l_create_time=time_str
        l_modify_time=time_str
        l_fbactid ='B'+str(i)
        l_b655 = time_str
        l_b656 = time_str
        l_b676 = time_str
        l_b677 = time_str
        l_b678 = time_str
        l_b679 = time_str
        l_b680 = time_str
        l_b681 = time_str
        l_b682 = time_str
        l_b683 = time_str
        l_remark='a'*2**20

        insert_sql = "insert into TB_OGG_TEST(id,fbactid,b655,b656,remark) values ('%s','%s',to_date('%s','YYYY-MM-DD HH24:MI:SS'),to_date('%s','YYYY-MM-DD HH24:MI:SS'),:remark)" %(l_id,l_fbactid,l_b655,l_b656)
        ##print(insert_sql)
        update_sql="update tb_test set name1='%s' where id=%s" %("update"+str_i,i)
        delete_sql="delete from tb_test where id=%s" %(i)
        try:
            # 执行sql语句
            cursor.setinputsizes(remark=cx_Oracle.CLOB)
            cursor.execute(insert_sql,remark=l_remark)
            # 提交到数据库执行
            if (i % 2) == 0:
                db.commit()
        except Exception as err:
            # Rollback in case there is any error
            print("sql语句执行错误", err)
            db.rollback()
    db.commit()
    cursor.close()
    db.close()
    return 0

if __name__ == '__main__':
    print("开始时间:"+time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
    l_flag = insert_data()
    print("结束时间:"+time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))

 

标签:DATE,clob,python,db,remark,##,str,time,oracle
From: https://www.cnblogs.com/hxlasky/p/17305153.html

相关文章

  • Windows 系统上如何安装 Python 环境(详细教程)
    Windows系统上如何安装Python环境(详细教程)目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。由于2.x版官方只维护到2020年,所以以3.x版作为示例,但是2.x版与3.x版安装方法及环境变量配置的方法是一模一样的,所以请放心。下载Python安装包进入Python官网www.......
  • Python Django 通用视图和错误视图的使用
    定义通用视图修改book/models.py代码中的AuthorInfo类,如果一致则不必修改classAuthorInfo(models.Model):id=models.CharField(max_length=30,verbose_name="身份证号",primary_key=True)name=models.CharField(max_length=20,verbose_name="姓名")t......
  • 全网最详细中英文ChatGPT-GPT-4示例文档-智能聊天机器人从0到1快速入门——官网推荐的
    目录Introduce简介setting设置Prompt提示Sampleresponse回复样本APIrequest接口请求python接口请求示例node.js接口请求示例curl命令示例json格式示例其它资料下载ChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流......
  • 位运算--不用加法实现两数相加--Python解法
    不用加法实现两数相加(两数均可能是负数或者0)defadd(a,b):#迭代#a^b#无进位求和#(a&b)<<1#进位x=0xffffffffa&=xb&=xwhileb!=0:a,b=a^b,(a&b)<<1&xreturnaifa<=0x7fffffffelse~(a^x)......
  • Python 学习 01 硬件
                                 计算机的硬件组成控制器:计算机的指挥系统(类似人脑)运算器:数学运算和逻辑运算(类似人脑)储存器:分为内存和外存       内存:相当于人脑的短期记忆,速度快,存储能力差,只能识......
  • Debian11安装python3.10
    一、aptinstallpython默认安装的是python3.9 二、安装python3.10需要下载源码手动编译安装sudoaptupdate&&sudoaptupgradesudoaptinstallbuild-essentialzlib1g-devlibncurses5-devlibgdbm-devlibnss3-devlibssl-devlibreadline-devlibffi-devlibsqlit......
  • python文本转语音库Pyttsx3
    python文本转语音库Pyttsx3:https://github.com/nateshmbhat/pyttsx3Installation:pipinstallpyttsx3Linuxinstallationrequirements:Ifyouareonalinuxsystemandifthevoiceoutputisnotworking,then:Installespeak,ffmpegandlibespeak1asshown......
  • python+selenium写自动化脚本遇到的坑
    1.定位不到元素网速不好定位的元素还没有刷新出来使用等待有三种强制等待,显式等待,隐式等待动态ID不要复制xpath,要手写。判断是动态ID的方法,多次关闭浏览器再打开网址,查看ID是否会发生变化下拉框,文件无法定位还没有解决......
  • python统计list中出现最多的数字
    要统计一个Python列表中出现最多的数字,可以使用Python内置的collections模块中的Counter类。Counter类可以用于统计可迭代对象中每个元素的出现次数,返回一个字典,其中键是元素,值是元素出现的次数。然后,可以使用Python内置的max()函数找到字典中的最大值。以下是一个示例代码:from......
  • 深入理解 python 虚拟机:字节码教程(2)——控制流是如何实现的?
    深入理解python虚拟机:字节码教程(2)——控制流是如何实现的?在本篇文章当中主要给大家分析python当中与控制流有关的字节码,通过对这部分字节码的了解,我们可以更加深入了解python字节码的执行过程和控制流实现原理。控制流实现控制流这部分代码主要涉及下面几条字节码指令,......