[表示 : 全て 最新50 1-99 101- 201- 2chのread.cgiへ]
Update time : 11/03 11:46 / Filesize : 54 KB / Number-of Response : 232
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C#, C♯, C#相談室 Part85



3 名前:デフォルトの名無しさん [2014/10/03(金) 15:33:50.83 ID:tHhdIR5n]
前スレ>>971
ありがとうございます。解決しました。バージョンはOracle.DataAccess 4.121.1.0です。
要点:最初のデータINSする際に、適当な文字列をCLOB列に入れる
詰まってた点:最初のデータINSの際に、CLOB列には何も値を入れていなかった(列指定すらしてなかった)

CREATE TABLE TEST (
ID NUMBER,
NAGAI CLOB,
CONSTRAINT PK_TEST PRIMARY KEY(ID));

OracleConnection con = new OracleConnection();
con.ConnectionString = "User Id=test;Password=test;Data Source=test";
con.Open();

//第一段階(CLOBに適当な値入れる。今回の場合OO4OっぽくEMPTYという文字列)
OracleCommand myCmd = new OracleCommand("insert into test(id,nagai) values (1,'EMPTY')", con);
myCmd.ExecuteNonQuery();

//第二段階(CLOBに本当の値入れる)
char[] charArray = "ほんまに長い文章".ToCharArray();
OracleCommand cmd =new OracleCommand("select * from test", con);
OracleDataReader rs = cmd.ExecuteReader();
rs.Read();
OracleTransaction txn = con.BeginTransaction();
Oracle.DataAccess.Types.OracleClob tclob = rs.GetOracleClobForUpdate (colno);
tclob.Erase();//←最初に入れたEMPTYという文字列を消す。
tclob.Write(charArray, 0, charArray.Length );
txn.Commit();

あー、ビール飲みたい






[ 続きを読む ] / [ 携帯版 ]

全部読む 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<54KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef