ORACLE中LONG类型字段的存取

简介: ORACLE中存取4000字节以上大文本类型可以用此数据类型,其在C#中的读写方法如下:注意需要引用 System.Data.OracleClient然后添加命名空间:using System.Data.

ORACLE中存取4000字节以上大文本类型可以用此数据类型,其在C#中的读写方法如下:

注意需要引用 System.Data.OracleClient
然后添加命名空间:using System.Data.OracleClient

ORALCE建库脚本:

img_a6339ee3e57d1d52bc7d02b338e15a60.gif CREATE   TABLE  TEST 
img_a6339ee3e57d1d52bc7d02b338e15a60.gif(
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    AGREEMENT_ID      
CHAR ( 3 NOT   NULL ,
img_a6339ee3e57d1d52bc7d02b338e15a60.gif    AGREEMENT_CONTENT 
LONG          NULL
img_a6339ee3e57d1d52bc7d02b338e15a60.gif)

插入数据:

img_a6339ee3e57d1d52bc7d02b338e15a60.gif      protected   void  Button1_Click( object  sender, EventArgs e)
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif    
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif {
img_33d02437d135341f0800e3d415312ae8.gif        OracleConnection conn 
= new OracleConnection(@"Password=XXXXXX;User ID=hk;Data Source=wealth;Persist Security Info=True");
img_33d02437d135341f0800e3d415312ae8.gif        conn.Open();
img_33d02437d135341f0800e3d415312ae8.gif        OracleCommand cmd 
= new OracleCommand("Select * From TEST", conn);
img_33d02437d135341f0800e3d415312ae8.gif        
string sql = "Insert Into TEST (AGREEMENT_ID, AGREEMENT_CONTENT)   Values(:P_ID,   :P_Value)";
img_33d02437d135341f0800e3d415312ae8.gif        cmd.CommandText 
= sql;
img_33d02437d135341f0800e3d415312ae8.gif        cmd.Parameters.Add(
"P_ID"this.TextBox2.Text);
img_33d02437d135341f0800e3d415312ae8.gif        cmd.Parameters.Add(
"P_Value"this.TextBox1.Text);
img_33d02437d135341f0800e3d415312ae8.gif        cmd.ExecuteNonQuery();
img_33d02437d135341f0800e3d415312ae8.gif        conn.Close();
img_05dd8d549cff04457a6366b0a7c9352a.gif    }

读取数据:
img_a6339ee3e57d1d52bc7d02b338e15a60.gif      protected   void  Button2_Click( object  sender, EventArgs e)
img_405b18b4b6584ae338e0f6ecaf736533.gifimg_1c53668bcee393edac0d7b3b3daff1ae.gif    
img_a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif {
img_33d02437d135341f0800e3d415312ae8.gif        OracleConnection conn 
= new OracleConnection(@"Password=XXXXXX;User ID=hk;Data Source=wealth;Persist Security Info=True");
img_33d02437d135341f0800e3d415312ae8.gif        conn.Open();
img_33d02437d135341f0800e3d415312ae8.gif        
string sql = "Select   *   From   TEST where AGREEMENT_ID = :P_ID";
img_33d02437d135341f0800e3d415312ae8.gif        OracleDataAdapter da 
= new OracleDataAdapter(sql, conn);
img_33d02437d135341f0800e3d415312ae8.gif        da.SelectCommand.Parameters.Add(
"P_ID"this.TextBox2.Text);
img_33d02437d135341f0800e3d415312ae8.gif        DataSet ds 
= new DataSet();
img_33d02437d135341f0800e3d415312ae8.gif
img_33d02437d135341f0800e3d415312ae8.gif        da.Fill(ds);
img_33d02437d135341f0800e3d415312ae8.gif        
this.TextBox1.Text = ds.Tables[0].Rows.Count.ToString();
img_33d02437d135341f0800e3d415312ae8.gif        
this.TextBox1.Text = ds.Tables[0].Rows[0]["AGREEMENT_CONTENT"].ToString();
img_33d02437d135341f0800e3d415312ae8.gif        conn.Close();
img_05dd8d549cff04457a6366b0a7c9352a.gif    }
目录
相关文章
|
7月前
|
存储 Oracle 关系型数据库
【YashanDB 知识库】YMP 校验从 yashandb 同步到 oracle 的数据时,字段 timestamp(0) 出现不一致
在YMP校验过程中,从yashandb同步至Oracle的数据出现timestamp(0)字段不一致问题。原因是yashandb的timestamp(x)存储为固定6位小数,而Oracle的timestamp(0)无小数位,同步时会截断yashandb的6位小数,导致数据差异。受影响版本:yashandb 23.2.7.101、YMP 23.3.1.3、YDS联调版本。此问题会导致YMP校验数据内容不一致。
|
7月前
|
存储 Oracle 关系型数据库
【YashanDB 知识库】YMP 校验从 yashandb 同步到 oracle 的数据时,字段 timestamp(0) 出现不一致
【YashanDB 知识库】YMP 校验从 yashandb 同步到 oracle 的数据时,字段 timestamp(0) 出现不一致
|
7月前
|
Oracle 关系型数据库 MySQL
【YashanDB知识库】oracle dblink varchar类型查询报错记录
这篇文章主要介绍了 Oracle DBLINK 查询崖山 DB 报错的相关内容,包括 ODBC 安装配置、数据源配置、dblink 环境配置、问题原因分析及规避方法。问题原因是 dblink 连接其他数据库时 varchar 类型转换导致的,还介绍了 long 类型限制、char 等类型区别,规避方法是修改参数 MAX_STRING_SIZE 支持 32K。
|
7月前
|
存储 Oracle 关系型数据库
【YashanDB知识库】YMP校验从yashandb同步到oracle的数据时,字段timestamp(0)出现不一致
【YashanDB知识库】YMP校验从yashandb同步到oracle的数据时,字段timestamp(0)出现不一致
|
9月前
|
Oracle 关系型数据库 数据库
【YashanDB知识库】oracle dblink varchar类型查询报错记录
在使用Oracle DBLink查询VARCHAR类型数据时,可能会遇到多种报错。通过了解常见错误原因,采取合适的解决方法,可以有效避免和处理这些错误。希望本文提供的分析和示例能帮助你在实际工作中更好地处理DBLink查询问题。
226 10
|
11月前
|
编译器 C#
c# - 运算符<<不能应用于long和long类型的操作数
在C#中,左移运算符的第二个操作数必须是 `int`类型,因此需要将 `long`类型的位移计数显式转换为 `int`类型。这种转换需要注意数据丢失和负值处理的问题。通过本文的详细说明和示例代码,相信可以帮助你在实际开发中正确使用左移运算符。
123 3
|
11月前
|
编译器 C#
c# - 运算符<<不能应用于long和long类型的操作数
在C#中,左移运算符的第二个操作数必须是 `int`类型,因此需要将 `long`类型的位移计数显式转换为 `int`类型。这种转换需要注意数据丢失和负值处理的问题。通过本文的详细说明和示例代码,相信可以帮助你在实际开发中正确使用左移运算符。
222 2
|
11月前
|
编译器 C#
c# - 运算符<<不能应用于long和long类型的操作数
在C#中,左移运算符的第二个操作数必须是 `int`类型,因此需要将 `long`类型的位移计数显式转换为 `int`类型。这种转换需要注意数据丢失和负值处理的问题。通过本文的详细说明和示例代码,相信可以帮助你在实际开发中正确使用左移运算符。
102 0
|
前端开发 Java 数据库
Java系列之 Long类型返回前端精度丢失
这篇文章讨论了Java后端实体类中Long类型数据在传递给前端时出现的精度丢失问题,并提供了通过在实体类字段上添加`@JsonSerialize(using = ToStringSerializer.class)`注解来确保精度的解决方法。
|
存储 Oracle 关系型数据库
关系型数据库Oracle备份类型与频率
【7月更文挑战第21天】
219 6

推荐镜像

更多