tag:blogger.com,1999:blog-8677649049588007585.post3115781753170798561..comments2023-06-18T16:15:22.432+01:00Comments on PL/SQL Challenge: More semantic analysis - and objections - in 28 April quiz (2244)Steven Feuersteinhttp://www.blogger.com/profile/16619706770920320550noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-8677649049588007585.post-14043144641182286902011-04-30T20:55:54.411+01:002011-04-30T20:55:54.411+01:00Thanks for your thoughts Stew. Sometimes
non-nati...Thanks for your thoughts Stew. Sometimes <br />non-native English speekers miss some nuances, but at least they speek more than one language. <br /><br />What I didn't like is to reduce the correctness to a semantic discussion instead of showing that assigning a variable to an OUT parameter will change the value. <br /><br />Br MartinMartin M.https://www.blogger.com/profile/10688464840407646038noreply@blogger.comtag:blogger.com,1999:blog-8677649049588007585.post-55583719926579341792011-04-29T20:27:05.319+01:002011-04-29T20:27:05.319+01:00I think the question was worded clearly enough. E...I think the question was worded clearly enough. Even for non-native English-speakers, "can" is one of the most basic words in the language. If you can not understand it, you can not program in English because you WILL NOT understand the meaning of anything you read.<br /><br />- StewAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-8677649049588007585.post-90653471922369769262011-04-29T14:42:32.027+01:002011-04-29T14:42:32.027+01:00> you can define OUT and IN OUT parameter
Yes ...> you can define OUT and IN OUT parameter<br /><br />Yes I can, but:<br /><br />If I pass my variable to an IN OUT parameter it will not be changed as long as there is no assignment within the procedure and this will always be one of the other (undisputed) choices.<br /><br />An OUT parameter, well, thats tricky. My variable will be set to NULL if I don't assign a value within the procedure. This might be a valid opinion - might be! We come near to hair splitting if we go this way.<br /><br />Regards<br />MarcusMarcushttp://matzberger.de/oraclenoreply@blogger.comtag:blogger.com,1999:blog-8677649049588007585.post-35196104686363769762011-04-29T13:56:20.811+01:002011-04-29T13:56:20.811+01:00Hello again,
I have discussed the answer with my ...Hello again,<br /><br />I have discussed the answer with my collegues and passing as and argument "can" actually change the value of an variable.<br /><br />DECLARE<br /> l_var VARCHAR2(10) := 'Filled';<br /><br /> PROCEDURE only_out(argument_out OUT VARCHAR2) IS<br /> BEGIN<br /> <><br /> NULL;<br /> END only_out;<br />BEGIN<br /> dbms_output.put_line(coalesce(l_var,'Not Filled'));<br /> only_out(l_var);<br /> dbms_output.put_line(coalesce(l_var,'Not Filled'));<br />END;<br />/<br /><br />So bad for me the choice is correct.<br /><br />Br MartinAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-8677649049588007585.post-53905247112661453572011-04-29T13:40:23.265+01:002011-04-29T13:40:23.265+01:00Sorry, but I still don't have a "It depen...Sorry, but I still don't have a "It depends". The fact is that the passing "can" not change the variable in any case. It has to be done in the procedure or function.<br /><br />Please consider also that a lot of us are not native speekers!<br /><br />Br MartinAnonymousnoreply@blogger.com