Board index » delphi » Blob field / Memofield problem using IP4 Delphi4 and Oracle7

Blob field / Memofield problem using IP4 Delphi4 and Oracle7

I am developing an application using Delphi4 IP4 and Oracle7 (SQL Anywhere).

As I don't have an Oracle server online when I write my code, I use an SQL
Anywhere server instead during development, and then change to the Oracle
database at my customers place to do tests and final compilation.

When I use SQL Anywhere I don't have any problems using memo/blob fields,
but when i change to Oracle the memofields shows up empty all thoug they are
not, if I double click the memofield of a wwDBGrid and get the memodialog
box, it is empty! But if i look behind the scene using Oracles management tools
the field is not empty. I don't get any errors at all, seemingly everything works fine.

If I try to update or insert new information into the memofield it still shows up
empty in the wwDBGrid/memodialog after post, but behind the scene the field
now contains the data that I wrote in the memodialog box. Still I don't get any
errors at all.

The field type I use in Oracle is LONG, which Delphi sees as a memo field.
The Blob field type in the wwDBGrid is set to ftMemo.

Should I use an other type than LONG for a memo field in Oracle?

Any suggentions is welcome.

I know this is not a IP4/Oracle7 problem as I have tried using theTDBMemo
component with the same result.

Regards

Palle Koch

 

Re:Blob field / Memofield problem using IP4 Delphi4 and Oracle7


How about trying Long Raw?

Quote
Palle Koch <p...@vortex-danmark.dk> wrote in message

news:80dvff$scg7@forums.borland.com...
I am developing an application using Delphi4 IP4 and Oracle7 (SQL Anywhere).

As I don't have an Oracle server online when I write my code, I use an SQL
Anywhere server instead during development, and then change to the Oracle
database at my customers place to do tests and final compilation.

When I use SQL Anywhere I don't have any problems using memo/blob fields,
but when i change to Oracle the memofields shows up empty all thoug they are
not, if I double click the memofield of a wwDBGrid and get the memodialog
box, it is empty! But if i look behind the scene using Oracles management
tools
the field is not empty. I don't get any errors at all, seemingly everything
works fine.

If I try to update or insert new information into the memofield it still
shows up
empty in the wwDBGrid/memodialog after post, but behind the scene the field
now contains the data that I wrote in the memodialog box. Still I don't get
any
errors at all.

The field type I use in Oracle is LONG, which Delphi sees as a memo field.
The Blob field type in the wwDBGrid is set to ftMemo.

Should I use an other type than LONG for a memo field in Oracle?

Any suggentions is welcome.

I know this is not a IP4/Oracle7 problem as I have tried using theTDBMemo
component with the same result.

Regards

Palle Koch

Re:Blob field / Memofield problem using IP4 Delphi4 and Oracle7


Long raw is the same as Long, except that it is designed for binary
data.  Do you need a Long?  If your memo is not going to exceed 2000
characters you can use
VARCHAR2(2000).  All Oracle fields > 255 show up empty in a DBGrid.  You
have to write a program to pop the contents into a DBMemo object in
order to read or edit them, which is a very good reason not to use memo
fields in a DBGrid.  Alternately, you could put a DBMemo alongside the
grid, and point it at the memo field.  Why not do yourself a favor, and
buy Personal Oracle to do your development on?

John

Re:Blob field / Memofield problem using IP4 Delphi4 and Oracle7


Actually I do use a memofield alongside the DBGrid, but that also shows up empty
after a post, and I think that's strange.

I think I will try the VARCHAR2(2000).

Regarding the Personal Oracle, I didn't think/know about that as I am quite new to Oracle.

Thanks a lot

Palle koch

John Pierce <jpie...@healthplanning.com> skrev i en nyhedsmeddelelse:382C5762.E44D7...@healthplanning.com...

Quote
> Long raw is the same as Long, except that it is designed for binary
> data.  Do you need a Long?  If your memo is not going to exceed 2000
> characters you can use
> VARCHAR2(2000).  All Oracle fields > 255 show up empty in a DBGrid.  You
> have to write a program to pop the contents into a DBMemo object in
> order to read or edit them, which is a very good reason not to use memo
> fields in a DBGrid.  Alternately, you could put a DBMemo alongside the
> grid, and point it at the memo field.  Why not do yourself a favor, and
> buy Personal Oracle to do your development on?

> John

Re:Blob field / Memofield problem using IP4 Delphi4 and Oracle7


By the way!

Does Personal Oracle excist for Oracle 7? I can't find it.

Palle Koch

Palle Koch <p...@vortex-danmark.dk> skrev i en nyhedsmeddelelse:80r8c3$i...@forums.borland.com...
Actually I do use a memofield alongside the DBGrid, but that also shows up empty
after a post, and I think that's strange.

I think I will try the VARCHAR2(2000).

Regarding the Personal Oracle, I didn't think/know about that as I am quite new to Oracle.

Thanks a lot

Palle koch

John Pierce <jpie...@healthplanning.com> skrev i en nyhedsmeddelelse:382C5762.E44D7...@healthplanning.com...

Quote
> Long raw is the same as Long, except that it is designed for binary
> data.  Do you need a Long?  If your memo is not going to exceed 2000
> characters you can use
> VARCHAR2(2000).  All Oracle fields > 255 show up empty in a DBGrid.  You
> have to write a program to pop the contents into a DBMemo object in
> order to read or edit them, which is a very good reason not to use memo
> fields in a DBGrid.  Alternately, you could put a DBMemo alongside the
> grid, and point it at the memo field.  Why not do yourself a favor, and
> buy Personal Oracle to do your development on?

> John

Re:Blob field / Memofield problem using IP4 Delphi4 and Oracle7


Sorry, I sort of lost track of this thread.  After a post, you have to
close, then open  the query to refresh the control, unless you're using
cached updates, in which case the controls will be filled.  Yes,
Personal Oracle is available in Version 7.3.4 for Windows 95/NT.  I
don't know how you'd get in Denmark, but it can be bought from software
retailers in U.S.  I think it's about $350.

If there's anything further, send it directly to my email address.

John

Other Threads