C# 处理Oracle CLob插入或更新 字符串过长的问题
2006-11-15 12:10
891 查看
在项目开发过程中,碰见一个这样的问题:
用FreeTextBox控件输入带格式的内容,保存至数据库,但插入时发现总是报错:字符串过长
到网上搜了下,大概有几种方法,太复杂
后来这样的问题大概是由于Oracle,拼接sql语句不支持超过4000字符,中文不能超过2000,现在我参照网上有些兄弟的提示,用参数进行操作,实现如下:希望能给像我一样迷惑的兄弟一种解决方法
//利用传参数
OracleConnection Con = new System.Data.OracleClient.OracleConnection(strCon);
Con.Open();
//自己用时,替换自己的sql语句
string cmdText="insert into xmgl_wd(pk_wdbh,wdmc,lbbh,wdnr,wdfjdz,wdsj,istj) values (XMGL_WD_SEQ.Nextval,'"+wdmc+"','"+lbbh+"',:pb,'"+wdfjdz+"',"+str_add_wdsj+",'"+istj+"')";
OracleCommand cmd = new OracleCommand(cmdText,Con);
OracleParameter op = new OracleParameter("pb",OracleType.Clob);
op.Value = wdnr;
cmd.Parameters.Add(op);
cmd.ExecuteNonQuery();
Con.Close();
用FreeTextBox控件输入带格式的内容,保存至数据库,但插入时发现总是报错:字符串过长
到网上搜了下,大概有几种方法,太复杂
后来这样的问题大概是由于Oracle,拼接sql语句不支持超过4000字符,中文不能超过2000,现在我参照网上有些兄弟的提示,用参数进行操作,实现如下:希望能给像我一样迷惑的兄弟一种解决方法
//利用传参数
OracleConnection Con = new System.Data.OracleClient.OracleConnection(strCon);
Con.Open();
//自己用时,替换自己的sql语句
string cmdText="insert into xmgl_wd(pk_wdbh,wdmc,lbbh,wdnr,wdfjdz,wdsj,istj) values (XMGL_WD_SEQ.Nextval,'"+wdmc+"','"+lbbh+"',:pb,'"+wdfjdz+"',"+str_add_wdsj+",'"+istj+"')";
OracleCommand cmd = new OracleCommand(cmdText,Con);
OracleParameter op = new OracleParameter("pb",OracleType.Clob);
op.Value = wdnr;
cmd.Parameters.Add(op);
cmd.ExecuteNonQuery();
Con.Close();
相关文章推荐
- [急]Oracle Clob字段插入数据库时报:字符串长度过长
- PHP处理中文字符串中的特殊字符解决Oracle插入报错的问题
- db2数据库的Clob域出现字符串过长插入失败的问题
- qt4.8与达梦数据库间的插入和更新字符串数值问题
- C#中字符串处理(随时更新)
- Oracle中Clob类型处理解析:ORA-01461:仅可以插入LONG列的LONG值赋值
- 解决Oracle in 超过1000个问题 C#拼接字符串
- php insert Oracle clob 字段处理问题
- 使用ibatis处理大数据量批量插入更新问题
- C# 用sql insert into 语句向oracle插入数据数据一直未更新
- Spring+Hibernate中处理Oracle的大字段(clob二进制\blob大字符串)
- C# 字符串,数组,日期常遇到的处理方法(持续更新)
- C# 字符串,数组,日期常遇到的处理方法(持续更新)
- C# 字符串,数组,日期常遇到的处理方法(持续更新)
- C#字符串处理插入(Insert)函数
- Oracle Clob字段保存时提示字符串过长
- java 将长度很长的字符串(巨大字符串超过4000字节)插入oracle的clob字段时会报错的解决方案
- C#对于字符串的处理类(剪裁、过滤危险字符、替换sql中有问题符号等)
- C#中字符串中含有\0的问题处理
- 字符串处理问题(c++和c#两种解法)