ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Root SQL exception

Post new topic  Reply to topic
 Root SQL exception « View previous topic :: View next topic » 
Author Message
vmurdesh
PostPosted: Fri May 09, 2003 10:35 am    Post subject: Root SQL exception Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

Hi,

I get the above 'Root SQL exception' when i do a database select as shown
on page 113 Chapter 8 of the ESQL reference manual..

SET OutputRoot =InputRoot;
SET OutputRoot.XML.Test.Result []=
(SELECT T.COLUMN1 AS Column1,T.COLUMN2 AS Column2
FROM Database.USERTABLE AS T);

What is the correct syntax to select multiple row and move to XML output?

Thanks.
Back to top
View user's profile Send private message
Empeterson
PostPosted: Fri May 09, 2003 11:05 am    Post subject: Reply with quote

Centurion

Joined: 14 Apr 2003
Posts: 125
Location: Foxboro, MA

Try this:

SET OutputRoot.XML.Test.Result []=
LIST(SELECT T.COLUMN1 AS Column1,T.COLUMN2 AS Column2
FROM Database.USERTABLE AS T);

I got this from page 104, Chapter 6 of the ESQL reference manual. No idea if it works but its worth a shot hehe.
Back to top
View user's profile Send private message Send e-mail AIM Address
jefflowrey
PostPosted: Fri May 09, 2003 11:52 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Do you have 'Treat Warnings as Errors' checked on the advanced tab in your compute node?
Back to top
View user's profile Send private message
vmurdesh
PostPosted: Fri May 09, 2003 12:34 pm    Post subject: The LIST syntax does not work for Database SELECT Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

and i do have 'Treat Warnings as Errors' checked on the advanced tab in your compute node...

Thanks
Back to top
View user's profile Send private message
kirani
PostPosted: Fri May 09, 2003 4:31 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Well, in that case if you don't have any record in the DB table, the compute node will throw an exception. Uncheck that particular check box and then retry the operation.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
vmurdesh
PostPosted: Mon May 12, 2003 5:25 pm    Post subject: What is the correct syntax for multiple SELECT ? Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

My table does have 1 row and i tried with the 'Treat Warnings as Errors'
box both checked and unchecked..

I used the input xml to trigger this select and the SELECT clause as specified on page 113 Chapter 8 of the ESQL reference manual..

To trigger the SELECT, you must send in a trigger message with an XML body that
is of the following form:
<Test>
<Result>
<Column1>value1</Column1>
<Column2>value2</Column2>
</Result>
<Result>
<Column1>value3</Column1>
<Column2>value4</Column2>
</Result>
</Test>

Thanks for all your help..
Back to top
View user's profile Send private message
kirani
PostPosted: Mon May 12, 2003 7:13 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

could you post your complete ExceptionList here?
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
vmurdesh
PostPosted: Tue May 13, 2003 8:16 am    Post subject: Here is the Root and ExceptionList Reply with quote

Novice

Joined: 09 May 2002
Posts: 18

(
(0x1000000)Properties = (
(0x3000000)MessageSet = ''
(0x3000000)MessageType = ''
(0x3000000)MessageFormat = ''
(0x3000000)Encoding = 546
(0x3000000)CodedCharSetId = 437
(0x3000000)Transactional = TRUE
(0x3000000)Persistence = FALSE
(0x3000000)CreationTime = GMTTIMESTAMP '2003-05-13 16:11:27.120'
(0x3000000)ExpirationTime = -1
(0x3000000)Priority = 0
(0x3000000)ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x3000000)ReplyProtocol = 'MQ'
(0x3000000)Topic = NULL
)
(0x1000000)MQMD = (
(0x3000000)SourceQueue = 'MESSAGEBUS.ADMIN.REQUEST'
(0x3000000)Transactional = TRUE
(0x3000000)Encoding = 546
(0x3000000)CodedCharSetId = 437
(0x3000000)Format = 'MQSTR '
(0x3000000)Version = 2
(0x3000000)Report = 0
(0x3000000)MsgType = 8
(0x3000000)Expiry = -1
(0x3000000)Feedback = 0
(0x3000000)Priority = 0
(0x3000000)Persistence = 0
(0x3000000)MsgId = X'414d51204d515349514d20202020202083d7bf3e12900100'
(0x3000000)CorrelId = X'000000000000000000000000000000000000000000000000'
(0x3000000)BackoutCount = 0
(0x3000000)ReplyToQ = ' '
(0x3000000)ReplyToQMgr = 'MQSIQM '
(0x3000000)UserIdentifier = 'vmurdesh '
(0x3000000)AccountingToken = X'160105150000002d09156ee9776c3af423dd54ef03000000000000000000000b'
(0x3000000)ApplIdentityData = ' '
(0x3000000)PutApplType = 11
(0x3000000)PutApplName = 'E:\MQSI\ih03\rfhutil.exe '
(0x3000000)PutDate = DATE '2003-05-13'
(0x3000000)PutTime = GMTTIME '16:11:27.120'
(0x3000000)ApplOriginData = ' '
(0x3000000)GroupId = X'000000000000000000000000000000000000000000000000'
(0x3000000)MsgSeqNumber = 1
(0x3000000)Offset = 0
(0x3000000)MsgFlags = 0
(0x3000000)OriginalLength = -1
)
(0x1000010)XML = (
(0x5000018)XML = (
(0x6000011) = '1.0'
(0x6000012) = 'UTF-8'
)
(0x6000002) = '
'
(0x1000000)GetMessageList = (
(0x1000000)Results = (
(0x1000000)a =
)
)
(0x6000002) = '
'
)
)
(
(0x1000000)RecoverableException = (
(0x3000000)File = 'F:\build\S210_P\src\DataFlowEngine\ImbComputeNode.cpp'
(0x3000000)Line = 390
(0x3000000)Function = 'ImbComputeNode::evaluate'
(0x3000000)Type = 'ComIbmComputeNode'
(0x3000000)Name = '3b69e209-f500-0000-0080-e1077a5a4d9e'
(0x3000000)Label = 'MessageBusLogMaint.Compute1'
(0x3000000)Text = 'Caught exception and rethrowing'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 2230
(0x1000000)DatabaseException = (
(0x3000000)File = 'F:\build\S210_P\src\DataFlowEngine\ImbOdbc.cpp'
(0x3000000)Line = 143
(0x3000000)Function = 'ImbOdbcHandle::checkRcInner'
(0x3000000)Type = ''
(0x3000000)Name = ''
(0x3000000)Label = ''
(0x3000000)Text = 'Root SQL exception'
(0x3000000)Catalog = 'WMQIv210'
(0x3000000)Severity = 3
(0x3000000)Number = 2321
(0x1000000)Insert = (
(0x3000000)Type = 2
(0x3000000)Text = '100'
)
)
)
)
Back to top
View user's profile Send private message
kirani
PostPosted: Wed May 14, 2003 9:21 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Try this,

Create a message flow as follows,
MQInput(out)->Compute->Trace1->MQOutput
MQInput(catch)->Trace2

1. Read your input message as BLOB in MQInput node.
2. Connect a Compute node to the out terminal of MQInput node. In this compute node, select "Copy Complete Message" and enter following ESQL code.
Code:

SET Environment.Variables.ResultSet[] = ( SELECT T.COLUMN1 AS Column1, T.COLUMN2 AS Column2 FROM Database.USERTABLE AS T);


In advanced tab, select "Throw Errors on DB Exception" and un-check "Treat Warnings as Errors".

3. Attach a Trace node to the out terminal of the compute node, In this node, print ${Environment} into some trace file (Output File).

4. Attach a MQOutput node to the out terminal of the trace node. Configure the node to write the message to some output queue.

5. Attach a trace node to the "catch" terminal of the MQInput node, write ${ExceptionList} into this trace node (Exception File).

First make sure you have your ODBC connection setup properly and the same query "select * from USERTABLE" works from the command prompt and shows some results.

Now deploy this message flow to your broker and then put any message on the input queue. Take a look at your Output and Exception trace file as post your observations here.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Root SQL exception
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.