喫茶XRAYトップページ

[スレッド全体
]

[10531] Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 16:56:00 Mr.XRAY
[Blobフィールドへの格納方法への質問]
http://www.freeml.com/delphi-users/4577/latest

コードを見る限りエラーが発生するような要因はないようなんですが.
昨日今日の方ではないので
「エラーの内容を書いた方がいいのではないでしようか ?」
とは言いにくいですね.

かなり昔,コードのインデントがない方がいい,という内容をどこかのサイト
で読んだ記憶がありますが,
Delphi を使っている方で本当にいるとは思いませんでした.
私自身は読みにくいと思っていますけど.
えっ ?  違う ? 何が (笑)


[10533] Re:Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 17:32:29 igy
▼ Mr.XRAYさん
> [Blobフィールドへの格納方法への質問]
> http://www.freeml.com/delphi-users/4577/latest
>
> コードを見る限りエラーが発生するような要因はないようなんですが.


あのコードで、シングルクォーテーションが2つ並んでいるのは、気になりますね。


[10536] Re2:Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 17:38:25 SO
▼ igyさん
 
> あのコードで、シングルクォーテーションが2つ並んでいるのは、気になりますね。

バックコーテーションの間違いですかね?

create table hogehoge
(
`レコード番号` int,
`レコード区分` char(2),
`受付番号` char(8)
)

[10537] Re3:Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 17:45:37 Mr.XRAY
▼ SOさん

> バックコーテーションの間違いですかね?

だとすると,というより,
実際データを SELECT して TDBGrid 等に表示できるか確認する必要が...
そんなことやっているでしょうね.
いや,もしかしたら... ハハハッ

どうして POST できないのか興味あるんですが,
例によって,怖くてレスできません !!
やっぱりここはエスパーの登場を期待することにします.


[10538] Re4:Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 18:00:52 SO
▼ Mr.XRAYさん

Delphi手元にないので、私も妄想で書いてますが、
「function CreateBlobStream(Field: TField; Mode: TBlobStreamMode): TStream; virtual;」
って、ポインタを返すわけではないですよね?
BlobStream.Free;
ADODataSet1.Post;
Postする前に解放してるけど???

[10539] Re5:Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 18:16:03 Mr.XRAY
▼ SOさん

> BlobStream.Free;
> ADODataSet1.Post;
> Postする前に解放してるけど???


これは,質問された方のコードが本当であれば,OK です.
Free しても実体はあります.nil しなければ.

[01-01_生成したコンポーネントの解放と破棄 -  Free と nil]
http://mrxray.on.coocan.jp/Delphi/plSamples/160_CreateComponent.htm#01-01

ただですね.質問された方のコードは,コピペではないですよね.明らかに.
それが問題なんですよね.


[10540] Re6:Blobフィールドへの格納方法への質問返信 削除
2016/11/19 (土) 18:22:20 Mr.XRAY
> Free しても実体はあります.nil しなければ.

これを読んだ方が誤解するといけないので補足しておきます.
こういうことが可能なのは,Free した直後ぐらいと思った方がいいです.

Free というのは,文字通り自由になってしまうわけですから,
もし,その後にいろいろなコードを実行すると,他のオブジェクトが
そのメモリ領域を使ってしまうとアウトです.ハイ.


[10559] Re7:Blobフィールドへの格納方法への質問返信 削除
2016/11/24 (木) 09:07:55 snail
▼ Mr.XRAYさん
> > Free しても実体はあります.nil しなければ.
>
> これを読んだ方が誤解するといけないので補足しておきます.
> こういうことが可能なのは,Free した直後ぐらいと思った方がいいです.
>
> Free というのは,文字通り自由になってしまうわけですから,
> もし,その後にいろいろなコードを実行すると,他のオブジェクトが
> そのメモリ領域を使ってしまうとアウトです.ハイ.


これは「こうすればエラーがでません」というだけで、本当はおかしい使い方
のように感じます。
これはやっぱり障害回避方法だと思いますが間違っていますか。


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82