How are you handling ASCII 0 values

Hi,
I have noticed a strange thing with ASCII 0 values. in the process of database replication MSSQL to Oracle some columns in the source DB (MSSQL) have some of the values as ascii 0.
when i load this data with sqlldr in oracle and query the table this columns are not considered as null.
ex:
table_name : PriceItems
Column_name : Description
if i query the table with select count() from PriceItems where Description is null* the result is 0
if i query the table with select count() from PriceItems where Description = chr(0)* the result is 301 (actual rows)
how can we handle this kind of situations?
is this a bug of Oracle?
My Oracle Version:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
PL/SQL Release 11.1.0.7.0 - Production
"CORE     11.1.0.7.0     Production"
TNS for Linux: Version 11.1.0.7.0 - Production
NLSRTL Version 11.1.0.7.0 - Production
Edited by: user8999602 on Sep 3, 2012 9:22 AM

Ascii character zero indicates a NULL character. Not a null string.
A null string is a string without a value - i.e. a string that has no ASCII (or EBCDIC or Unicode) characters. Oracle does not discriminate between Ascii characters.
Character zero is used, on Windows for example, as string terminator. An empty string can thus only contain a zero terminator. And thus the confusion. An empty string is not the same as a null string in this case - but a zero string length implies the string is empty, does not contain characters (despite containing a char zero), and is therefore null.
The issue is inconsistencies in implementation and terminology. NULL itself is a very abused concept in software engineering.

Similar Messages

  • How are you handling keyword sets?

    After spending a little time keywording tonight, I like both Stamping and the "Assign this keyword to selected photo" options. Both are faster and easier than I anticipated. :-)
    The one speed bump has been keyword set creation. It appears to limit each set to nine keywords. Is that right? If so, I guess you could divide long sets into several nine-word subsets. But if you want them in alphabetical order, what happens when you add a new keyword to the set? Wouldn't you need to shuffle everything that follows?
    My temporary solution has been to create sets in the left Keyword Tags panel using "child of" nesting. This keeps that panel -- which otherwise sorts alphabetically without regard to category -- better organized and shorter. So far, I am keywording entirely from that side.
    Does this make sense? If you need long sets or deep nesting in your sets, how are you approaching keywording? BTW, the more I use it, the better I like LR.

    Alexander, what I'm asking about is how people handle long sets. If a keyword does not fall into the natural short-list category described by Mike, that doesn't mean you only use it "occasionally."
    Suppose you regularly photograph species -- flowers, birds, animals -- or football teams with 85 players on a side. You don't want to type every name or drag and drop, do you? As Steve Jobs said of using a stylus: Yuck. Or Ick. Or Blech. Or whatever he said. :-)
    The best solution I've found is to nest the lists in the left panel to shorten the panel, and then select images, twirl down the nested list to the desired keyword, and cmd-click to "Assign this keyword to selected photos." But that adds a step to the (IMHO) faster, easier system in Bridge.
    Just asking if others have found a quicker way.

  • How are you handling battery issues on N95 ?

    Hi guys
    am new user to N95 and like everything about its features except battery. Definetly am not a heavy users,just few txt message,couple of pictures and songs nothing really compared what you guys are doing(from what i read from other posts).i've to charge it every day!!
    my question is ,how you guys are handling ? just a spare battery ? or upgraded some higher powered battery ?
    i even disabled 3G and running only GSM but still
    Thanks for your comments or advise.

    Have you upgraded your firmware to the latest V20? It has a 30% increase in battery life and RAM.
    Check by typing in *#0000# in your phone.
    Message Edited by 6280 on 31-Dec-2007 09:14 PM
    Nokia N95
    V 20.0.015
    0546553

  • OWB 10.2 - How are you handling time dimensions?

    Hi all,
    I am struggling with what should be a simple thing to do. I want to create a time dimension and then have many "roles" or aliases for the time dimensioin WITH UNIQUE COLUMN NAMES across all of the roles.
    When the time dimensions are deployed to Discoverer, I want every one of them to have unique names and the column names within the time dimension have a unique prefix so that report users know which date column is from which table or dimension.
    Here's what I've done and failed at:
    1. Use the time dimension wizard - I can create any number of dimensions and corresponding tables BUT all of them have the same column names and I would have to manually change each and every one of them to get unique names (which may not even be possible with the wizard). Also, because I require ISO weeks, I can't really use the wizard at all.
    2. Manually create a time dimension (that supports ISO weeks) and create multiple "roles" for it:
    Thanks to a bug, I cannot exceed 4 roles without OWB crashing. Even with those 4 roles, when deployed to Discoverer, every attribute within the item folders has the same name. When I drag them to a report, there is no way to tell one from another. Is there some way I could do this without having to manually rename hundreds of columns?
    3. I wrote an elaborate SQLPlus script to copy and prefix dimensions and tables from a base dimension and table. When I then import the Dimension to OWB, the metadata for business identifier and surrogate identifier is not there and any cubes using those dimensions do not work with these attributes missing. I can't find a way to cleanly reverse engineer these into OWB.
    I have a cube with 12 dates - each of which should be a foreign key to a date dimension.
    How can I have all of these be uniquely named with uniquely named columns?
    How can I make it easy for my reporting users to select dates onto their reports?
    I hope I am missing an obvious solution, because so far, I cannot see where Oracle Warehouse Builder supports such a basic data warehousing concept.

    Well, since I'm the only one obsessed with time dimensions I guess, here is my ugly workaround:
    1. I create a base time dimension in OWB which I named 'ATLAS_TIME_DIM'
    2. I run the OMB script below which clones the dimension and table and renames the columns and attributes with a user supplied suffix. The end result is I get a full copy of the time dimension metadata with uniquely named columns.
    You then have to deploy the objects, and with SQLPlus, ensure that the table gets its data copied from your original table. Hope it helps someone until we have better Time dimension support from OWB.
    OMBCONNECT repos/password@SERVERNAME:1521:sidname
    # Prompt for new Dimension name and prefix
    puts -nonewline "Please enter name for new Dimension: "
    gets stdin newDim
    puts -nonewline "Enter Prefix for Dimension table columns: "
    gets stdin dimPrefix
    # Change into ATLAS_DW module in project ATLAS_DW
    OMBCC 'ATLAS_DW'
    OMBCC 'ATLAS_DW'
    # Copy the ATLAS_TIME_DIM to this dimension
    OMBCOPY DIMENSION 'ATLAS_TIME_DIM' TO '$newDim'
    # Set the business name
    OMBALTER DIMENSION '$newDim' \
    SET PROPERTIES (BUSINESS_NAME) VALUES ('$newDim')
    # Unbind the dimension from original table
    OMBALTER DIMENSION '$newDim' \
    DELETE BINDING
    # Bind to new table
    OMBALTER DIMENSION '$newDim' \
    IMPLEMENTED BY SYSTEM STAR
    # Add a prefix to all of the Dimension attributes
    set attrList [OMBRETRIEVE DIMENSION '$newDim' GET DIMENSION_ATTRIBUTES]
    foreach attrName $attrList {
    OMBALTER DIMENSION '$newDim' \
    MODIFY DIMENSION_ATTRIBUTE '$attrName' RENAME TO '$dimPrefix\_$attrName'
    # Add a prefix to all level attributes of the Dimension
    set levelList [OMBRETRIEVE DIMENSION '$newDim' GET LEVELS]
    foreach levelName $levelList {
    set levelAttrList [OMBRETRIEVE DIMENSION '$newDim' \
                            LEVEL '$levelName' GET LEVEL_ATTRIBUTES]
    foreach levelAttr $levelAttrList {
    OMBALTER DIMENSION '$newDim' MODIFY \
    LEVEL_ATTRIBUTE '$levelAttr' OF LEVEL '$levelName' \
    SET PROPERTIES (BUSINESS_NAME) VALUES ('$dimPrefix\_$levelAttr')
    OMBALTER DIMENSION '$newDim' MODIFY \
    LEVEL_ATTRIBUTE '$levelAttr' OF LEVEL '$levelName' \
    RENAME TO '$dimPrefix\_$levelAttr'
    # Add a prefix to all of the table columns except DIMENSION_KEY
    set columnList [OMBRETRIEVE TABLE '$newDim' GET COLUMNS]
    foreach colName $columnList {
    if { $colName == "DIMENSION_KEY" } {
    puts "$colName"
    } else {
    OMBALTER TABLE '$newDim' \
    MODIFY COLUMN '$colName' SET PROPERTIES (BUSINESS_NAME) VALUES ('$dimPrefix\_$colName')
    OMBALTER TABLE '$newDim' \
    MODIFY COLUMN '$colName' RENAME TO '$dimPrefix\_$colName'
    puts "$dimPrefix\_$colName"
    OMBSAVE
    OMBDISCONNECT
    Message was edited by:
    mike_fls

  • How are you handling your business listing on maps?

    Did you have to add it to Apple Maps or was it added by one of the Data Providers?
    Have you ever had a problem with information on it being changed?

    Audiophilia,
    Here's my latest info on how to edit/add your business to Apple Maps by country:
    Apple Maps Business Data Suppliers by Country
    I am updating this list regularly as I figure this stuff out.

  • How are you handling DistributedAccessExceptions?

    We have been experiencing network "gaps" where we get broadcast storms and it
    causes a temporary network loss for the end user. We use a pattern whereby a
    central client service object updates via remote "persistence" service objects
    to persist data.
    I've done some testing by disconnecting my own network cable before I try a
    "save" (which commits the data to the persistence mgr). My custom exception
    handler catches the DistributedAccessException, and displays, "Sorry the
    network was down, try again". Then I reconnect the cable, dismiss the
    "network down" dialog, and find that the transaction completes on its own.
    I wonder... can I always be assured that the transaction will complete once
    the network is available again? When would a user need to try the transaction
    again?
    -Martin
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    We have been experiencing network "gaps" where we get broadcast storms and it
    causes a temporary network loss for the end user. We use a pattern whereby a
    central client service object updates via remote "persistence" service objects
    to persist data.
    I've done some testing by disconnecting my own network cable before I try a
    "save" (which commits the data to the persistence mgr). My custom exception
    handler catches the DistributedAccessException, and displays, "Sorry the
    network was down, try again". Then I reconnect the cable, dismiss the
    "network down" dialog, and find that the transaction completes on its own.
    I wonder... can I always be assured that the transaction will complete once
    the network is available again? When would a user need to try the transaction
    again?
    -Martin
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • RE: How are you handlingDistributedAccessExceptions?

    Hi,
    It is a very interesting experiment!
    About your question. I think it depends on how you code your transaction.
    According to the manual, a transaction will rollback if an exception occurs
    and is being handled outside that transaction. Thus, in your situation, if
    the DistributedAccessException is being handled within the transaction, the
    transaction isn't being rolled back yet! Therefore, when things resume
    normal, you can continue.
    Regards,
    Peter Sham.
    -----Original Message-----
    From: Martin G Nystrom [SMTP:[email protected]]
    Sent: Friday, March 12, 1999 11:37 PM
    To: [email protected]
    Subject: How are you handling DistributedAccessExceptions?
    We have been experiencing network "gaps" where we get broadcast
    storms and it
    causes a temporary network loss for the end user. We use a pattern
    whereby a
    central client service object updates via remote "persistence"
    service objects
    to persist data.
    I've done some testing by disconnecting my own network cable before
    I try a
    "save" (which commits the data to the persistence mgr). My custom
    exception
    handler catches the DistributedAccessException, and displays, "Sorry
    the
    network was down, try again". Then I reconnect the cable, dismiss
    the
    "network down" dialog, and find that the transaction completes on
    its own.
    I wonder... can I always be assured that the transaction will
    complete once
    the network is available again? When would a user need to try the
    transaction
    again?
    -Martin
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Hi,
    I have a different understanding, which is slightly different from yours and
    the difference is on the last exception handling clause for the big
    transaction. My understanding is, if I handle the exception before the "end
    transaction" just like the way the exception is being handled in the middle
    operation, the transaction will still commit. That's why, I usually handled
    the exception outside the begin/end transaction block.
    Maybe I should do some experiment on this new findings.
    Peter Sham.
    -----Original Message-----
    From: [email protected] [SMTP:[email protected]]
    Sent: Monday, March 15, 1999 11:46 AM
    To: [email protected]; [email protected]
    Subject: RE: How are you handling
    DistributedAccessExceptions?
    You can also put operations you dont want to blow the overriding
    transaction inside their own exception blocks as long as you dont use the
    "begin transaction" keyword..
    i.e.,
    begin transaction
    doSomethingImportant(); // if this raises, we raise to
    bottom of the big block and blow trans
    begin
    doSomethingLessImportant();
    exception
    when e : GenericException do
    log the exception, clear error stack, etc..
    If we hit here it will still do the next
    step below in the big trans
    end;
    doAnotherImportantThing(); // exception here will also
    raise out and blow transaction
    exception
    when e : ....
    end transaction;
    My understanding is that the middle operation is part of the
    transaction, and if the third operation raises something and the transaction
    rolls back the second operation rolls back also. By adding the mini
    begin/exception/end block around the second operation you have simply
    avoided blowing the transaction if the middle operation fails. Note that
    you could also FORCE the transaction to fail if the error coming out of the
    middle operation is severe enough-Just dont handle the raised exception or
    re-raise something.
    Hope this helps..
    -Greg
    > -----Original Message-----
    > From: [email protected]
    <mailto:[email protected]> [SMTP:[email protected]]
    <mailto:[SMTP:[email protected]</a>]>
    > Sent: Saturday, March 13, 1999 8:13 PM
    > To: [email protected]
    <mailto:[email protected]>
    > Subject: RE: How are you handling
    DistributedAccessExceptions?
    >
    >
    >
    >
    > Forte rolls back the transaction before the exception
    handler is invoked
    > even if the exception is being handled inside the
    transaction block. You
    > should put the transaction block inside a loop and restart
    the transaction
    > if there is an exception or exit the loop if the
    transaction completes
    > successfuly.
    >
    >
    >
    >
    >
    >
    > "Peter Sham (HTHK - Assistant Manager - Software
    Development, IITB)"
    > <[email protected] <mailto:[email protected]> > on 03/12/99
    08:50:07 PM
    >
    > Please respond to "Peter Sham (HTHK - Assistant Manager -
    Software
    > Development, IITB)" <[email protected]
    <mailto:[email protected]> >
    >
    > To: Martin G Nystrom <[email protected]
    <mailto:[email protected]> >
    > cc: [email protected]
    <mailto:[email protected]> (bcc: Hetal Badheka/Blythe-Nelson)
    > Subject: RE: How are you handling
    DistributedAccessExceptions?
    >
    >
    >
    >
    > Hi,
    > It is a very interesting experiment!
    > About your question. I think it depends on how you code
    your transaction.
    > According to the manual, a transaction will rollback if an
    exception
    > occurs
    > and is being handled outside that transaction. Thus, in
    your situation,
    > if
    > the DistributedAccessException is being handled within the
    transaction,
    > the
    > transaction isn't being rolled back yet! Therefore, when
    things resume
    > normal, you can continue.
    > Regards,
    > Peter Sham.
    > -----Original Message-----
    > From: Martin G Nystrom
    [SMTP:[email protected]] <mailto:[SMTP:[email protected]</a>]>
    > Sent: Friday, March 12, 1999 11:37 PM
    > To: [email protected]
    <
    "mailto:[email protected]">mailto:[email protected]>
    > Subject: How are you handling
    DistributedAccessExceptions?
    > We have been experiencing network "gaps" where we get
    broadcast
    > storms and it
    > causes a temporary network loss for the end user. We
    use a pattern
    > whereby a
    > central client service object updates via remote
    "persistence"
    > service objects
    > to persist data.
    > I've done some testing by disconnecting my own
    network cable before
    > I try a
    > "save" (which commits the data to the persistence
    mgr). My custom
    > exception
    > handler catches the DistributedAccessException, and
    displays, "Sorry
    > the
    > network was down, try again". Then I reconnect the
    cable, dismiss
    > the
    > "network down" dialog, and find that the transaction
    completes on
    > its own.
    > I wonder... can I always be assured that the
    transaction will
    > complete once
    > the network is available again? When would a user
    need to try the
    > transaction
    > again?
    > -Martin
    >
    > -
    > To unsubscribe, email '[email protected]' with
    > 'unsubscribe forte-users' as the body of the message.
    > Searchable thread archive
    > <URL:http://pinehurst.sageit.com/listarchive/
    <URL:http://pinehurst.sageit.com/listarchive/> >
    > -
    > To unsubscribe, email '[email protected]' with
    > 'unsubscribe forte-users' as the body of the message.
    > Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/
    <URL:http://pinehurst.sageit.com/listarchive/> >
    >
    >
    >
    >
    >
    >
    > -
    > To unsubscribe, email '[email protected]' with
    > 'unsubscribe forte-users' as the body of the message.
    > Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/
    <URL:http://pinehurst.sageit.com/listarchive/> >
    To unsubscribe, email '[email protected]' with 'unsubscribe
    forte-users' as the body of the message.
    Searchable thread archive
    <URL:http://pinehurst.sageit.com/listarchive/
    <URL:http://pinehurst.sageit.com/listarchive/> >
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • How do you handle multiple at the same address?

    My wife just got an iMac. She is using the Birthday feature in Address Book and iCal to track our friends and family birthdays and anniversaries.
    Question:
    How do you track it when multiple people are at the same address? For instance, our friends are a family of four, but they all live at the same address. Do you need to make a separate Address Book card for each of them, even the 1 year old baby? Or can you track multiple people in a single card with custom fields?
    If you do need to make multiple cards, then how do you handle mailing lists? For instance, if I make separate cards for all four of them, how do I make sure I only send on Christmas card when I use my Mac to print labels?
    Thanks for any advice.

    This is really an issue that you're going to have to resolve yourself since Apple's address book isn't really built with this in mind - darn it. For me there are three scenarios. First, a singleton. No problem. Second a family for which all members share the same information - acquantences to whom I don't send birthday greetings. These get one card and I'll put in both (or all) their names in the first name field (as in Bob and Jean). If there are children, in the last name field I'll add 'and Ken' or 'and the kids'. Third, a family for which some fields are different - perhaps cell phone number, birthday, etc.
    For mailing purposes, I create a holiday group and put the people I'll be sending cards to into the group.

  • How do you handle an incoming call while playing a game?

    If you're playing a game on your iPhone, how do you handle an incoming call? A call will stop my app from running, but how do I save the state and restore it when the user starts the app again?
    I have a bunch of objects on-screen and I need to record where they are so that the user doesn't lose the progress of their game.
    I've looked through the SDK, but I can't see anything obvious. Any ideas?

    I don't have a device to test with, but I suspect you'd want to save state in one of the UIApplicationDelegate callbacks:
    applicationWillResignActive:
    applicationWillTerminate:

  • How to find the ascii value in abap

    Hi everyone,
    i  want to get to ascii value of a given character. so wanted to know whether is it possbile to get ascii value of a character in ABAP  or not ?
    if yes let us know the way to find it ...
    thank you.

    Hi,
    Please go through this link below:
    http://www.sap-img.com/abap/how-can-i-get-ascii-value-of-any-letter.htm
    You can also try using FM's:
    CHAR_INT_CONVERSION,
    CHAR_HEX_CONVERSION
    Hope it helps
    Regards
    Mansi

  • If you've upgraded to the Rev. 1 router how are you liking it?

    If you've upgraded to the Rev. 1 router how are you liking it over the old one that you had? Wired speeds aside are you getting more or less wireless speeds or not much difference? This of course applies if your wireless cards can handle the higher speeds.
    Range any better?
    Looking for feedback as I'm still deciding if I want to upgrade my Westell 7100 to the Rev. 1 because I'd have to upgrade my pc's network card as well.

    TNS_2 wrote:
    I assume you mean REV I (letter i) .  Speed is better range is about the same.
    I that case then cheaper and more likely better to just purchase your own router/wap and and it to the internal network.
    I you don't have tv as part of your package then could request to change to ethernet connection from ont and just replace the westell with your own router.

  • How are businesses handling the "APPLE LOCK" on company cell phones when an employee leaves and their phone is unusable because the euipment was set up on the employee's personal Apple Account with their ID and password?

    How are businesses handling the "APPLE LOCK" on company cell phones when an employee leaves and their phone is unusable because the euipment was set up on the employee's personal Apple Account with their ID and password?  When an employee leaves a business and the company has purchased the equipment, the company should have the rights to reissue the equipment and Apple should provide an alternative to unlock the equipment from the employee's personal APPLE account and password so the company (that purchased the equipment) can reissue the line and equipment to another employee.

    If you can prove ownership to Apple, they may be able to help you.
    The best way of handing things would be strong policies requiring that the equipment be turned in in a usable state. i.e. not activation locked. Failing this, the employee should be charged the cost of the replacement phone. Held from their final paycheck if required.

  • How are applications handles when Lion installed?

    How are applications handled when Lion is installed?
    1) Are the standard (i.e. App store, phone booth, iPhoto, iCal, etc) automatically reinstalled?
    2) How is iTunes handled? iMovie?
    3) How is Mail handled? Will it automatically reinstall my Contacts, Mail folders with all of my saved emails?
    4) How are 3rd party Apps handled that are located in the Application folder? in a separately created foldeer?
    5) How is Time Machine handled? with all of its past backups?
    Thanks

    If you install over Snow Leopard, you'll get new default Apple apps.
    iLife, iWork, and 3rd-party apps wont be disturbed (although PPC apps will no longer work).
    Mail will be updated, your stuff will be covered..
    Time Machine just continues on.
    By all means, back up first, just in case something goes wrong.
    Also see: Changes in Lion from Snow Leopard

  • Interview Q: 'how did you handle delta'

    Hi BW experts,
    I've been asked this question in the interviews, 'how did you handle delta?'  I know how to create delta.  What is the right answer for this type of question? should I start explaining what/how we did in my previous company?
    I'd appreciate and assign points, if someone can provide the answer for this.
    Thanks,
    Sam

    The answer depends on what you have been talking about, I mean the previous discussion you had with the the interviewer. There are different way of handling delta... example:
    1. The extractor itself handles delta and it send you the before and after image of the changes.
    2. sometimes you load the data direclty to ODS and depending on the key you have in ods, the delta is being handled.
    3. In somecases, you may not need to worry about handling delta at all (full load)... going back to the quesion you asked, that depends on the discussion you had with him/her.
    thanks.
    Wond

  • How to find the ASCII value for an alphabet.

    How to find the ASCII value for an alphabet.

    How can I get Ascii value of any letter
    How can I get Ascii value of any letter.  Is there any function?
    This is how you do it : 
    report demtest.
    data : c.
    field-symbols : <n> type x.
    data : rn type i.
    c = 'A'.
    assign c to <n> casting.
    move <n> to rn.
    write rn.
    This will convert 'A' to 65.
    Tom Demuyt
    How to convert ascii value to character.
    If I give input as 65 (ascill value) I want display 'A'.
    Below logic is for convert from character to ascii value , now I want to know how to convert ascii value to character.
    Naveen
    report demtest.
    *going from A to 65
    data : c value 'A'.
    field-symbols : <n> type x.
    data : rn type i.
    assign c to <n> casting.
    move <n> to rn.
    write rn.
    *going from 66 to B
    data : i type i value 66.
    data : x type x.
    field-symbols : <fc> type c.
    move i to x.
    assign x to <fc> casting type c.
    move <fc> to c.
    write c.

Maybe you are looking for