Re: Do I need to create a field type LONG?

From: Galina <galkas_at_mail.ru>
Date: 6 May 2004 00:59:50 -0700
Message-ID: <ecdc865.0405052359.1dd8e62b_at_posting.google.com>


Hi Jim
Thank you for your answer. Of course, it should be this way. Any respectable database stores strings allocating disk space as much as necessary and not more. If Access does so, how can it be different with Oracle, which is much more superiour! Yesterday I copied my table from Access to Oracle with that field, which can be any length, set as Varchar2 1000. I was very baffled to find that the tablespace lost after copying about 70 MBt of space. Previously, when I set up the field type long and wizard didn't allow me to enter initial allocations, the tablespace after copying was about 8 MBt less.
I even doubted for a short while, that your answer was right. But then I decided that Oracle allocated all this space to my table, because every record might have have 1000 character long string, but didn't use it and new records will be added into the same allocated space. Which means, that for a while the tablespace will not grow, despite records being added. We shall see. The performance, if the field is set as Varchar2, is noticeably better then when it was long. Galina    

"Jim Kennedy" <kennedy-downwithspammersfamily_at_attbi.net> wrote in message news:<nmNlc.20901$IG1.865525_at_attbi_s04>...
> "Galina" <galkas_at_mail.ru> wrote in message
> news:ecdc865.0405040457.25b3d48a_at_posting.google.com...
> > Thank you both for answering. I have already re-created the table with
> > the field type Varchar2 length 1000.
> > Simply for curiosity, when I copy a string shorter then 1000 into this
> > field, will Oracle use memory necessary to store the string, or to
> > store 1000 characters long string? Sorry for silly question, I
> > understand that I could have found it somewhere...
> > Galina
> > galkas_at_mail.ru (Galina) wrote in message
> news:<ecdc865.0404290204.79ae76df_at_posting.google.com>...
> > > Hello
> > > I am going to copy a data from MS Access table into Oracle table. One
> > > of fields is memo type and data in this field range from 1 character
> > > to 551 long string. Do I need to create a field type LONG in the
> > > Oracle table to accommodate this data? If not, what field type would
> > > suit best?
> > > Any help will be greatly appreciated.
> > > Thank you.
> > > Galina
> It stores the string as is. It does not pad the string. So if the string
> is of length 2 then it takes up 2 (plus one for the column delimiter)
> Jim
Received on Thu May 06 2004 - 09:59:50 CEST

Original text of this message