oracle的insert语句clob,.Net 操作 Oracle CLOB类型字段 INSERT 超长数据

如果仅仅在数据库中设置了类型为 CLOB 字段类型,使用普通的 INSERT 语句直接写入数据到数据库的话,它依然会将其视为 VARCHAR 类型数据,并最大长度为 4000 字符。超过该长度会报出字符串超长,写入数据失败的错误。

使用 Dapper 处理 CLOB 数据 INSERT

代码如下:

OracleConnection cnn = new OracleConnection("..数据库链接字符串..");

cnn.Open();

string content = "假定超过4000的超长字符串";

byte[] newValue = Encoding.Unicode.GetBytes(content); //这里一定要使用 Unicode 字符编码

OracleClob p_content = new OracleClob(cnn);

p_content.Write(newValue, 0, newValue.Length);

string sql = "INSERT INTO TABLE(CONTENT) VALUES(:content)";

DynamicParameters parameter = new DynamicParameters();

parameter.Add("content", p_content);

cnn.Execute(sql, parameter);

cnn.Close();

其实跟 Dapper 也没多大关系,在 .Net 中的 Oracle CLOB 需要以上特殊处理下,否则 Dapper 会将其视为普通字符串类型写入。

敲重点,如何 UPDATE CLOB 字段类型的数据

本来没有这一节文章内容的,我认为像 INSERT 同样的方式创建 SQL 参数传入就好了。实际上并不是,UPDATE 需要跟以往同样的方式,直接 string 传参就可以了,以下参考:

OracleConnection cnn = new OracleConnection("..数据库链接字符串..");

cnn.Open();

string content = "假定超过4000的超长字符串";

string sql = "UPDATE TABLE SET CONTENT = :content WHERE ID = :id";

DynamicParameters parameter = new DynamicParameters();

parameter.Add("id", 10001);

parameter.Add("content", content);

cnn.Execute(sql, parameter);

cnn.Close();

你没看错,它不需要再转换为 OracleClob 对象参数了,转换了反而会报错。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551128.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php阅读器开发,微信小程序阅读器的简单实例开发

这篇文章主要介绍微信小程序阅读器的简单实例开发的相关资料,需要的朋友可以参考下今天和朋友聊天说到小程序,然后看在看书,然后我们就弄了个小读书的demo,然后现在分享一下。一、先来上图:首先先说下边的tabBar,项目采…

oracle存储返回sql查询,如何做才能使record类型和table类型存储查询语句返回的多条记录?...

CREATE OR REPLACE PROCEDURE Zxt_type_Study Is/*type 的使用*/Testrow1 Test%ROWTYPE;TYPE Aa IS TABLE OF Test%Rowtype;Testrow Aa : Aa();TYPE Bb IS TABLE OF Test.ac%Type;Cc Bb;Testrow2 Test%ROWTYPE;t Test.Ac%TYPE;BEGINTestrow2.Ac : a3;Testrow…

oracle10g检测未通过,win64bit安装oracle 10g版本检查未通过解决 提示要求的结果: 5.0,5.1,5.2,6.0 之一 实际结果: 6.1...

在WIN7上安装oracle 10g时&#xff0c;提示如下信息&#xff1a;正在检查操作系统要求...要求的结果: 5.0,5.1,5.2,6.0 之一实际结果: 6.1检查完成。此次检查的总体结果为: 失败 <<<<问题: Oracle Database 10g 未在当前操作系统中经过认证。建议案: 确保在正确的平…

php对扑克牌进行排序,C#代码实现扑克牌排序的几种方式

扑克牌游戏&#xff0c;总是能用到很多的手牌排序&#xff0c;总结了几种方式供参考&#xff0c;顺便记录一下方便以后使用。我做的这个是由(1-13:黑桃A-K || 14 - 26:红桃 || 27 - 39&#xff1a;梅花 || 39 - 52 : 方片 || 53.54&#xff1a;小王.大王)表示的一副扑克牌&…

oracle10g导入dmp文件恢复,oracle 10g 恢复dmp文件。

1. 在winxp下&#xff0c;安装10g&#xff0c;默认选择&#xff0c;一路ok。(安装前自检出现dhcp警告&#xff0c;可直接忽略)2.命令行&#xff0c;在xp下&#xff0c;输入sqlplus&#xff0c;即可启动&#xff0c;登陆用 sqlplus / as sysdba 用管理员登陆3.在恢复oracle时&am…

js十秒没有点击怎么判断_MAC口红怎么判断真假?没批号就没有生产日期,网友:品控太差...

一般来说&#xff0c;MAC的口红产品&#xff0c;底部都会有三位编码&#xff0c;这是该款口红的批号。因像MAC这类国外美妆护肤品牌&#xff0c;是不会将生产日期明确的标注在产品上&#xff0c;都是将其编码成批号&#xff0c;在标注在外包装或者产品的侧面、底部等边缘位置。…

剪辑内核linux,Linux01-Linux编辑内核定制属于自己的内核49

一、编译内核相关命令1、重装initrd文件命令&#xff1a;mkinitrd&#xff1a;creates initial ramdisk p_w_picpaths forpreloading modules格式:mkinitrd initrd文件路径 内核版本号,如:mkinitrd/boot/initrd-uname -r.img uname -r2、I/O处理命令a、命令格式说明2${parame…

go run main.go 参数_介绍一款Go项目热编译工具gowatch

使用场景在golang项目编写过程中&#xff0c;需要对项目不断的进行构建go build并调试以快速发现问题&#xff0c;而我们每次进行手动的进行go build又太重复&#xff0c;所以写了这么一个工具gowatch来实时的监听文件的改动并编译运行&#xff0c;大大提升开发效率。快速入门安…

linux 服务端口查询,linux 怎么查看服务和端口

(1)查看本机关于IPTABLES的设置情况[roottp ~]# iptables -L -nChain INPUT (policy ACCEPT)target prot opt source destinationChain FORWARD (policy ACCEPT)target prot opt source destinationChain OUTPUT (policy ACCEPT)target prot opt source destinationChain RH-Fi…

python 捕获鼠标点击事件,在Python中的wx.Frame外部捕获鼠标事件

In Python using wxPython, how can I set the transparency and size of a window based on the proximity of the mouse relative to the applications window, or frame?Eg. similar to a hyperbolic zoom, or The Dock in MAC OS X? I am trying to achieve this effect …

linux cordova安装教程,cordova搭建环境

cordova搭建环境一、配置java环境变量1.安装JDK 选择安装目录 安装过程中会出现两次 安装提示 。第一次是安装 jdk &#xff0c;第二次是安装 jre 。建议两个都安装在同一个java文件夹中的不同文件夹中。(不能都安装在java文件夹的根目录下&#xff0c;jdk和jre安装在同一文件夹…

安卓rpg绅士游戏资源_海贼无双3(动作游戏)——电脑安卓单机游戏下载资源分享...

点击上方蓝字关注我们01游戏简介&#xff1a;游戏名称&#xff1a;海贼无双3其它名称&#xff1a;One Piece - Pirate Warriors 3游戏类型&#xff1a;动作游戏开发发行&#xff1a;Omega Force游戏平台&#xff1a;PC整理时间&#xff1a;2020-04-25官方网址&#xff1a;http:…

linux分区始柱号,找到了linux分区顺序错乱修复方法

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼我之前安装ARCH时 因为自带的CFDISK工具太烂使用了主流的FDISK和PARTED 都远远不如DISKPART满意 功能弱不说最重要的就是莫名奇妙的错误超级多 错误提示还少甚至没有 让人郁闷到极限尤其是parted 因为没光驱 硬盘安装 之前又是WIND…

11210怎么等于24_想要消耗100大卡热量,怎么做才最简单?

减肥&#xff0c;最根本的原理就是制造热量差&#xff0c;从饮食上限制热量的摄入&#xff0c;调理体质让基础代谢更高&#xff0c;运动来进一步增加消耗&#xff0c;当热量差达到7000大卡左右的时候&#xff0c;就能瘦下来1kg的纯脂肪&#xff01;美食当前&#xff0c;自然要先…

连接linux工具Mtr,Linux常用网络工具:路由扫描之mtr

除了上一篇《Linux常用网络工具&#xff1a;路由扫描之traceroute》介绍的traceroute之外&#xff0c;一般Linux还内置了另一个常用的路由扫描工具mtr。mtr在某些方面比traceroute更好用&#xff0c;它可以实时显示经过的每一跳路由的信息&#xff0c;并不断进行探测。tracerou…

redis rua解决库存问题_【150期】面试官:Redis的各项功能解决了哪些问题?

点击上方“Java面试题精选”&#xff0c;关注公众号面试刷图&#xff0c;查缺补漏>>号外&#xff1a;往期面试题&#xff0c;10篇为一个单位归置到本公众号菜单栏->面试题&#xff0c;有需要的欢迎翻阅阶段汇总集合&#xff1a;一百期面试题汇总先看一下Redis是一个什…

启动盘Linux windows,Linux 中创建 USB 启动盘来拯救 Windows 用户

人们经常要求我帮助他们恢复被锁死或损坏的 Windows 电脑。有时&#xff0c;我可以使用 Linux USB 启动盘来挂载 Windows 分区&#xff0c;然后从损坏的系统中传输和备份文件。有的时候&#xff0c;客户丢失了他们的密码或以其他方式锁死了他们的登录账户凭证。解锁账户的一种方…

vue验证整数_前端Vue中常用rules校验规则

前端Vue中常用rules校验规则1、是否合法IP地址export function validateIP(rule, value,callback) {if(value||valueundefined||valuenull){callback();}else{const reg /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\![](https://user-gold-cdn.xit…

linux make编译报错 mv,Linux下安装redis

1&#xff1a;首先下载redis http://redis.io/download2: 需要Linux安装gcc依赖3&#xff1a;进行解压 tar -zxvf redis-3.0.0-rc2.tar.gz4&#xff1a;进入到redis-3.0.0目录下&#xff0c;进行编译 make (如果make编译报错 可直接用 make MALLOClibc 解决)5&#xff1a;…

c#中connect函数_C#.NET 各种连接字符串

1.C#连接连接Access程序代码:using System.Data;using System.Data.OleDb;..string strConnection"ProviderMicrosoft.Jet.OleDb.4.0;";strConnection"Data SourceC:BegASPNETNorthwind.mdb";OleDbConnection objConnectionnew OleDbConnectio…