Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Using bits to store information in the database.
most common use of bit-logic is to combine multiple "attributes" which may
occur in combinations. e.g. in UNIX read-write-execute permissions as in
chmod can be defined as ...
READ 100 (4) WRITE 010 (2)
in this case, i agree with raj completely regarding use of integers. first
of all,
"states" like "verified" and "non-verified" , "confirmed" and
"non-confirmed"
does not seem to co-exist ( at least, as far as their names go ). this
itself does
not justify the use of bit-logic ( even before performance impact is
considered ).
moreover, if the "states" themselves transition in a particular order, use
of
integers are much more suitable to track them. ( it gets "confirmed" only
after
it is "verified" ... and so on and so forth )
imho, storing bit-logic in columns should be the last resort, if at all ...
-----Original Message-----
Sent: Wednesday, May 07, 2003 10:57 AM
To: Multiple recipients of list ORACLE-L
I think using integers rather than bits will be easier on your where clause. It might look nice, but it will probably be a killer for performance when you starting using bit logic in queries.
I'd prefer but YMMV
Verified 1 Non-Verified 2 Conformed 3 non-confirmed 4 Audited 5
Raj
-----Original Message-----
Sent: Wednesday, May 07, 2003 10:22 AM
To: Multiple recipients of list ORACLE-L
Looking for advise on storing bits in the Oracle database column. The scenario goes like this:
define column statusFlag NUMBER(x)
statusFlag can represent the following:
verified set to 1
nonverified set to 10
confirmed set to 100
non confirmed set to 1000
audited set to 10000
I believe this gets my point accross.... So here are my questions:
What is the largest amount of bit I can set for a NUMBER(x)?
How can one set and retrive the information in Oracle based on bits being set?
Are there any draw backs from using too large of a NUMBER? I can guess one.. wasted space.
Thanks in advanced,
-Lizz
Do you Yahoo!?
The <http://us.rd.yahoo.com/search/mailsig/*http://search.yahoo.com> New
Yahoo! Search - Faster. Easier. Bingo.
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Chelur, Jayadas {PBSG} INET: jayadas.chelur_at_pepsi.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Wed May 07 2003 - 11:06:40 CDT