Name of the item too long when you use ROWTYPE

I encountered a problem with the xml elements names longer than 30 characters. Seems that it has something to do with ROWTYPE. Creation of this function is successful:

< pre >
FUNCTION to CREATE or REPLACE test_fnc
RETURN OF XMLTYPE
AS
var_return XMLTYPE.
l_dummy DUAL.dummy%TYPE;
BEGIN
SELECT dummy INTO l_dummy FROM DUAL;

SELECT XMLCONCAT (XMLELEMENT)
"TEST."
XMLFOREST)
l_dummy "THIS_IS_OVER_30_CHARACTERS_LONG".
)
))
data_set
IN var_return
FROM DUAL;


RETURN var_return;
END test_fnc;
/
< / pre >

However, the specification of the ROWTYPE variable gives error ORA-00972 (except if I shorten the name of the item...):

< pre >
FUNCTION to CREATE or REPLACE test_fnc
RETURN OF XMLTYPE
AS
var_return XMLTYPE.
l_dummy DOUBLE % ROWTYPE;
BEGIN
SELECT dummy INTO l_dummy FROM DUAL;

SELECT XMLCONCAT (XMLELEMENT)
"TEST."
XMLFOREST)
l_dummy. Dummy "THIS_IS_OVER_30_CHARACTERS_LONG."
)
))
data_set
IN var_return
FROM DUAL;


RETURN var_return;
END test_fnc;
/
< / pre >

Has anyone previously met, or have any ideas for a solution? I could specify all my variables as TYPE, but as there are many in the tables it would be easier to use ROWTYPE.

Oracle Database 11 g Enterprise Edition Release 11.1.0.6.0 - 64 bit Production

Thank you.

This works if you add 'AS' after l_dummy.dummy

SQL> CREATE OR REPLACE FUNCTION test_fnc
  2     RETURN XMLTYPE
  3  AS
  4     var_return   XMLTYPE;
  5     l_dummy      DUAL%ROWTYPE;
  6  BEGIN
  7     SELECT   dummy INTO l_dummy FROM DUAL;
  8
  9     SELECT   XMLCONCAT(XMLELEMENT (
 10                           "TEST",
 11                           XMLFOREST (
 12                              l_dummy.dummy AS "THIS_IS_OVER_30_CHARACTERS_LONG"
 13                           )
 14                        ))
 15                 data_set
 16       INTO   var_return
 17       FROM   DUAL;
 18  RETURN var_return;
 19  END test_fnc;
 20  /

Function created.

Ants

Tags: Database

Similar Questions

  • String control GPIB, too long when you use a multicore processor machine

    I have a HP 3457 A multimeter I communicate with the help of GPIB. I have two machines that have identical operating systems installed. CentOS 4.8 (equivalent to Red Hat Enterprise Linux 4.8) with the version of the kernel: 2.6.9 - 89.0.25.ELsmp.

    The first machine has a Pentium 2.8 GHz processor. We used this setup for a few years now without any problems. Given that the core processors go far, we need get our system working on a multi-core computer software. So, I loaded all our software on a new machine with an Intel Core 2 Duo processor. I have only this one all deadlines irregular left before calling this experience.

    In our code, we issue the following command to the multimeter and check a response:

    char * pm_init = "QR 0; PRESET; BACK OF THE TERM; END; LOCK ON; SREAL OFORMAT; « ;

    If (!) () (er = ibwrt (pm_ud, pm_init, strlen (pm_init))) & ERR))

    On the Pentium machine, it works fine. The multimeter does not have on the Core2 Duo computer. If I have this divide into two commands as follows:

    ER = ibwrt (pm_ud, "QR 0;") PRESET; BACK of the TERM; ", strlen (" QR 0; ") PRESET; TERM BACK ;")) & ERR

    If (!) () (er = ibwrt (pm_ud, "END; LOCK ON; OFORMAT SREAL. ", strlen ("END; LOCKING IN ONTARIO; OFORMAT SREAL ;"))) "& ERR))

    It works on both machines. However, it is a ugly real difficulty. Can someone tell me what is so different from the way in which the driver NOR past the verses of the long chain the two shorter chains?

    Thank you.

    Sorry, I thought that VISA facility would bring along the difficulty that we need, but when I look back it did not include a fix for Linux.

    This means that we don't currently have a driver available that will solve this problem, but there is a solution, if this is indeed the problem you see.

    The workaround is to disable DMA for your GPIB interface. To do this, you will need to open a handle to the jury and use the ibdma command to disable DMA. For example:

    handle = ibfind ("GPIB0");

    ibdma (handle, 0);

    At this point you should probably keep the handle open until your program is out, to ensure nothing resets the jury and allows again to DMA.

    As you can imagine, disable DMA can have an impact on performance in your application. If you make small, such transfers would probably be with a multimeter, you are unlikely to notice a difference in performance. If you transfer large size pads, you may encounter CPU utilization and more low than you would when using DMA.

    Please let me know if this workaround lets your program works, because this will tell us if this is the problem you are having, or if something goes wrong.

    -Jason S.

  • You met the C00D10D1 error message when you use Windows Media Player

    Hello

    I have no sound through Windows Media Player and also a player from Youtube and BBCi.  I have the following error message, please notify :-)

    You met the C00D10D1 error message when you use Windows Media Player. The following information can help you resolve the problem.

    Codec is missing

    Windows Media Player cannot play the file (or can't play the part of the file either audio or video) because theMP3 - codec MPEG Layer III (55) is not installed on your computer.

    The missing codec may be available for download on the Internet. For more information about codecs, seeCodecs: frequently asked questions.

    Hello
     
     
    1. What is the file type or extension that you try to play?

    If you get a message stating that your computer is missing a codec, you are probably trying to play, burn, or sync a file that was compressed by using a codec that does not include Windows or the default player. You will need to download codecs.
    Player Windows Media for Windows XP supported Codecs
    http://support.Microsoft.com/kb/291948
     
    Package of Installation of codec
     
    See also:
    Windows Media Player C00D10D1 error: MP3 - MPEG Layer III (55)
    http://Windows.Microsoft.com/en-us/Windows7/C00D10D1-55
     
    Note: The above are published in the Windows 7 category, but they apply to Windows XP too.

    I hope this helps.

    Thank you, and in what concerns:
    Shekhar S - Microsoft technical support.

    Visit our Microsoft answers feedback Forum and let us know what you think.
    If this post can help solve your problem, please click the 'Mark as answer' or 'Useful' at the top of this message. Marking a post as answer, or relatively useful, you help others find the answer more quickly.

  • How to choose the display by default when you use two screens on my Mac Pro?

    How to choose the display by default when you use two screens on my Mac Pro?

    The default view when you have several is made that you drag the little icon in the menu bar in this pane:

    .

  • Firefox does not open after the update. Cannot open the profile technical, even when you use the directory in cmd line path

    I'm using Firefox on a Windows 7 computer. Firefox does not open after the last update. I read the help articles and it seems that I need to create a new profile because my settings were probably corrupted. I'm unable to open the profile technical, even when you use the directory in cmd line path. I tried the following commands in the command line:

    Firefox Pei
    "C:\Program Files (x 86) \Mozilla" PEI

    Nothing happens with every order.

    I am also running Norton Internet Security. I read a help of virtual navigation features Re article that can cause a problem. The article says to check the setting of virtualization in the internet security software and to clear the virtual cache. I went through all the menus of settings in Norton Internet Security version 21.6.0.32 and I don't see anything that looked like in "virtualization" settings, so I guess that does not apply to me. "

    If you have any ideas, I had appreaciate that your expertise!

    Hello arcandl, at the launch of the firefox is not after you double-click the shortcut, it is sometimes also a sign of active malware on a system.
    you might want to try running a scan with some various other security like the free version of malwarebytes and adwcleaner tools that are specialized to remove the adware and browser hijackers.

    Fix Firefox problems caused by malicious software

  • Is it normal in the 6s overheating iphone when you use a wi - fi connection

    is it normal in the 6s overheating iphone when you use a wi - fi connection

    Overheating is an over-used and misunderstood term.

    An iPhone will turn off if it reaches dangerous temperatures.  Leave in the Sun on the beach and you see him give a warning of the temperature and turns off.

    And Yes, all that the phone will give a little heat.  It's basically a fan less computer that uses the metal case as a heat sink to the warmth of the wick away from the card.

  • How can I prevent the access denied message when you use the shutdown command?

    I use shutdown /m \\computername/s

    I have "Access denied (5)" as an answer.
    I am admin on all my computers. Same username and password on each of them.
    How can I get this shutdown command to work remotely, so I can't access every computer command prompt via Remote Desktop?
    How can I prevent the access denied message when you use the shutdown command?

    Hello

    I suggest you to report this issue in TechNet Forums for Windows 7 networks: http://social.technet.microsoft.com/Forums/en-US/w7itpronetworking/threads

    Thank you.

  • Move the point of origin when you use the scale tool

    Hello

    Can someone tell me if it is possible to move the point of origin when you use the scale tool? By default, when I change by dragging an anchor of the corner, the opposite corner is used as the origin. Ideally, I would like to to scale using an origin that is biased, I can specify sort. I know that you can do during the rotation, but I was not able to determine if this goal is achievable during the measurement. I use Illustrator CC 2015.3.1 and Mac.

    Any help would be appreciated.

    Thanks in advance

    Jason

    Click where you want the origin to be. Or move the reticle. Exactly the same as with the rotation tool.

  • CC of Dreamweaver generates one of the 3 error messages when you use find and replace on 8.1 Win 64 bit.

    CC of Dreamweaver generates one of the 3 error messages when you use find and replace is used more than twice in a row. "While executing onLoad in bc_afterSave.htm, the following JavaScript error occurred: at line 188 of file C:\Program Files (x 86) \Adobe|. Adobe DreamweaverCC | Configuration | Shared | ' BC\JS\bc_sites.js': out of memory.

    or

    When executing RunCommand in File_Save.htm, a JavaScript erroroccurred.

    or

    While exciting getDynamicContent inAdressURL.htm, an erroroccirred of Javascript.

    Any thought - I find myself CBWMS of closing and reopening. Will work for the other two find and replace once again before the popup of messaged\s error.

    Cough, cough, cough - 38 500 pages? !  Really?  It's a big site!

    I'm not surprised, that you are short of memory.  Try to limit your F & R records or select files rather than the entire Site.

    Nancy O.

  • If the data is empty when you use to_date(?,'yyyy/mm/dd') insert a file into db

    online form insert the? is user input, if the user entered the following works find, but if the input file is empty insert get an error, how to handle
    If the data is empty when you use to_date(?,'yyyy/mm/dd')
    Thank you

    Be more specific.

    You try to insert this in a column that is defined as not null?

    If so, you can choose a default value for the value that you want to use if the user leaves the field to the white screen.

    Or, better yet, use the validation of the front to prevent them from going into an empty space (or perhaps failed it there).

    However, if you still want to do it in the DB:

    Insert into table1 (non_null_date_col)
    values (to_date (nvl (?, '' 2199/12/31), "dd/mm/yyyy"));

  • How to make the menu letters more when you use Lightroom 4?

    How to make the menu letters more when you use Lightroom 4?

    Hey Lenovo W510,.

    The police of interface only option in Lightroom of sizing is in the preferences > Interface > panels > Font Size (Small/Large)

    The configuration in grand and then restarting Lightroom will increase the fonts you see in the signs that describe the functions of LR.

    If you're on Mac or Windows you might also decrease your screen/display resolution that will make everything look bigger on your screen.

    Hope this helps,

    Kind regards

    Pete

  • Problem with the pop-up windows when you use Safari

    Since Friday, February 12, 2016, when you use Safari, I get pop-ups on various internet sites.  Then I get a pop-up message for Massachusetts users to contact Apple Support @ 1 866 405 - 2214.  (http://www.ris4.com':).

    Use the EtreCheck to www.etrecheck.com and see what is running on your Mac.

    Perhaps you have Adware/Malware.

    But DO NOT contact this fake/Scam Apple support.

  • Need to reset the button by default when you use the structure of the event?

    When you use the buttons with a mechanical action "releasing lock" to only trigger the same structure with the same 'value has changed', the button does not jump upwards as you would expect.  I can get to behave as I want by adding a "default reset" invoke the node, but this seems somewhat exaggerated.  Is there an easier way to get the button to jump to the top after pressing on?

    The button will reset once it is read by the code. This means that the terminal is inside the structure of the event. If you move outside the terminal, it would read only the beginning of the race and then never and it will not be reset.

    If the terminal is learn the structure of the event, it is read by the code (even if it is not connected to anything) and it reset as soon as the event has a chance to run.

  • Port on which I check and apply in the window properties (XP) when you use a hp photosmart C4280

    Hello, help?

    Can someone please tell me what port should I check and apply in the properties when you use a Deskstop PC running Windows XP on a HP photosmart C4280 printer?

    When I checked the ports in the properties, none have been checked

    Thank you

    Poacherpete wrote: Hello, help? Can someone please tell me what port should I check and apply in the properties when you use a Deskstop PC running Windows XP on a HP photosmart C4280 printer? When I checked the ports in the properties, none have been checked. Thank you

    Hello Poacherpete, I would download the latest version of the software for your printer for Windows XP that's found its

    It is a link that contains information on how to set up your printer in Windows XP. It is a USB cable to the printer connection

  • 'File name' error too long when you copy a folder to a DVD disc

    When I copy a folder that contains a large number of files on an external hard drive, I have no problem, but if I try to copy the same folder to a DVD disc, I get a message indicating that a file name is too long.  My first question is why do I get the message for DVD and not the external hard drive?  My second question is: How can I generate a list of files in my folder that have too long names? My second question is already other post on the forum, but there was no answer.  Is it because it is not possible to generate such a list?

    Thank you

    It depends on what is called the 'file system '. File systems are how files are stored on a disk. Many of them have limits on how long the total file path can be. DVD and external hard drives use different file systems.

    If you want a list of all the files in a folder, open a command prompt. Type this in:

    CD "C:\path\to\folder".

    and press ENTER. Replace path\to\folder with the path of the file in your file that you want to check to make sure this filepath is in quotes!

    Now type:

    dir /s > 'output.txt '.

    and press ENTER. This will tell the guest to make a list of all the files in this folder and in each subfolder, and then store in a text file. This will allow you to view the list and I hope to find the long file names. Once you have found the long file name, go to that file, and then change the name.

    Here is an example of the above commands. Let's say I have a folder named "foo" in the My Documents folder. I first type:

    CD "C:\Users\Entegy\Documents\foo".

    and press ENTER. Now, I want the list of files to be placed on my desk. Then I type:

    dir /s > "C:\Users\Entegy\Desktop\filelist.txt."

    And voila, I have a list of all the content of foo on my desktop files. Just make sure that your path ends with .txt and you'll be fine. And don't forget to put quotes around filepaths!

Maybe you are looking for