I am getting a error multiple row fetched while executing a
Cobol-DB2 program.How can I solve it without using a cursor.
Answers were Sorted based on User's Feedback
Answer / marekj
I mean you want to fetch only the first row and the select
statement is correct. You have to use "fetch first 1 row
only" eg.
select name
from peoples
where name like 'A%'
fetch first 1 row only;
Is This Answer Correct ? | 15 Yes | 1 No |
Answer / nadeem
Select statement fetches only one row from table..make sure
ur program doesn fetch multiple rows..cursor is the only
way to fetch multiple rows to my knowledge..
Is This Answer Correct ? | 5 Yes | 1 No |
Answer / anamika
DB2 doesnt support 'TOP' clause. Please ignore my prev
reply.
Is This Answer Correct ? | 4 Yes | 2 No |
Answer / raja mohan reddy
As of my knowledge,we cannot fetch multiple rows with out
using cursor in cobol db2, Let us see the breif explanation
When you are trying to fetch multiple rows with select
statement using perform loop it gives the result as
fetches the first row while fetching the second row program
will be end with sqlcode.
Here is the only one way to fetch multiple rows from db2
table using cobol. Please follw the following steps.
1.Declare a cursor ( we have to code SELECT statement with
our criteria)
2.Open the cursor
3.fetch the rows using cursor
4.Close the cursor
Please Let me know if you find any mis stated information
Is This Answer Correct ? | 2 Yes | 1 No |
Answer / anju
To my knowledge, we can use fetch clause in a singleton
select inside COBOL.
Is This Answer Correct ? | 0 Yes | 1 No |
Answer / nk
Try using one of the group functions, for example, MAX or
SUM.
Is This Answer Correct ? | 2 Yes | 4 No |
Answer / ram.g
Pass the unique key to fetch the row from the table
Is This Answer Correct ? | 0 Yes | 3 No |
Answer / anamika
You cannot use 'Fetch first 1 row only' in a singleton
select in COBOL. Instead u can use 'SELECT TOP <colname>'
to get the first row in the result set.
Is This Answer Correct ? | 0 Yes | 5 No |
What is dbrm? When it will be created?
If we have 100 records in the PF, we deleted all the records then what is the Size of the PF?
What are host variables in db2?
What is index in db2?
I have a table name Table1 which contain columns Cust_no, car_model, country, salesamt. The records are 101, Fiat, India, 12345 2nd record is 102, Tata, USA, 98743 3rd record is 101, indica, India, 65342 4th record is 103, Toyota, UK, 64522 5th record is 103, Maruti, USA, 98632 and so on..... Now my question is write sql query which will give me detail about the sum of sales amount in perticular country
When is the results table for the query in a DECLARE CURSOR statement created?
What is the purpose of the WHENEVER statement?
what is the maximum number of tables that can be joined ?
how can u understand the end of the table ?
When is the authorization check on DB2 objects done - at BIND time or run time?
what is sql abend code -801,-802?
What is declare cursor?