Yerleşik SQL ile RPG'de (LE) bir dizi kayıt üzerinde nasıl yineliyorum?Yerleşik SQL ile RPG'de (LE) bir dizi kayıt üzerinde nasıl yinelemeli?
7
A
cevap
12
Genellikle bir imleç oluşturacağım ve her kaydı getireceğim.
//***********************************************************************
// Main - Main Processing Routine
begsr Main;
exsr BldSqlStmt;
if OpenSqlCursor() = SQL_SUCCESS;
dow FetchNextRow() = SQL_SUCCESS;
exsr ProcessRow;
enddo;
if sqlStt = SQL_NO_MORE_ROWS;
CloseSqlCursor();
endif;
endif;
CloseSqlCursor();
endsr; // Main
Bu cevap in a post on my website daha fazla ayrıntı ekledik.
7
Mike'ın dediği gibi, bir imleç üzerinde yineleme en iyi çözümdür. Biraz daha iyi performans vermek için eklerim, bir seferde bir kayıt yerine blok halinde işlemek için bir diziye almak isteyebilirsiniz.
Örnek:
EXEC SQL
OPEN order_history;
// Set the length
len = %elem(results);
// Loop through all the results
dow (SqlState = Sql_Success);
EXEC SQL
FETCH FROM order_history FOR :len ROWS INTO :results;
if (SQLER3 <> *zeros);
for i = 1 to SQLER3 by 1;
// Load the output
eval-corr output = results(i);
// Do something
endfor;
endif;
enddo;
HTH, James R. Perkins
+0
Bunu beğendim ... Daha önce yapmadım. Büyük kayıt kümelerinde denemek zorundayım. –
İlgili konular
- 1. Raylarda 3 bir dizi iki boyutlu dizi kayıt nasıl bulunur?
- 2. Otomasyon kullanarak C++ dilinde bir dizi Excel sütununu nasıl yinelemeli?
- 3. Bir dizi üzerinde regex?
- 4. smartwatch LE
- 5. bir dizi üzerinde .each() Nasıl Kullanılır
- 6. Bir dizi blok üzerinde nasıl numaralandırıyorsunuz?
- 7. Kayıt veya SQL Server
- 8. Bir "işlev" le birden çok işlev
- 9. Avro'da harita ile kayıt nasıl karıştırılır?
- 10. SQLServer SQL satır bir dizi döner bir SQL sorgusu
- 11. Kayıt alanları üzerinde nasıl yineleme yapılır?
- 12. T-SQL- Yinelemeli sorgu çalışanı hiyerarşisi
- 13. ConvertTo-JSON bir dizi ile bir dizi
- 14. Erişim SQL - UPDATE Kayıt yok
- 15. sql veritabanında limit kayıt grubu için sql
- 16. Swift 2.0 ile yinelemeli enumlar nasıl bildirilir
- 17. Nasıl kayıt bir PARAMETER kurucu ile yazın?
- 18. SQL dinamik kayıt sayısını seçin
- 19. balık: Bir dizi/liste üzerinde yineleme
- 20. C++ dizelerinin bir vektörünü nasıl yinelemeli?
- 21. Yineleyicileri kullanarak bir dizi üzerinde yineleme
- 22. xgettext ile dosyalar için yinelemeli tarama
- 23. VB.Net Sinek üzerinde bir dizi başlatılıyor
- 24. SQL Server'da değer() ile xml sütunundan birden çok kayıt alma
- 25. Karşılıklı yinelemeli sözdizimi Bound ile
- 26. Dolaylı başvuru kullanarak bir dizi üzerinde yineleme nasıl yapılır?
- 27. Yinelemeli bir tür kısıtlaması ile nesne yapmak imkansız mı?
- 28. CL.EXE ile derlenmiş C yerleşik bir DLL sürümünü nasıl ayarlayabilirim?
- 29. Raylardaki bir tablodan üst kayıt ile aynı kimlikle kayıt oluşturma
- 30. Android, Voleybol, SQL Sadece bir Kayıt görüntüleniyor mu?
Merhaba @ Mike Wills, bu konuda daha fazla ayrıntı okumak baktılar ama web bağlantısı bozuldu. – mike