Citación del post de
fastpho
|
❞
Hola @Joseg
Para poder realizar un "select" yo no lo pude hacer por "CALLBACK"
trabajo con la version 5.0 de PowerCobol y no acepta PROCEDURE-POINTER
Entonces para resolverlo hago :
sqlite3_open_v2
sqlite3_prepare_v2
sqlite3_step aca hay que meter el loop si o sqlite3_finalize
sqlite3_close_v2
Saludos...
|
Muchas gracias
Pero, sigue sin funcionar
Código COBOL:
working-storage.
01 num-bytes pic s9(09) COMP-5 IS GLOBAL.
01 num-columns pic s9(09) COMP-5 IS GLOBAL.
01 pStmt usage pointer IS GLOBAL.
01 zTail pic s9(09) COMP-5 IS GLOBAL.
procedure division.
MOVE "chinook.db" & X"00" TO BD-FILE-NAME.
call "sqlite3_open_v2" & X"00" WITH STDCALL LINKAGE
USING BY REFERENCE BD-FILE-NAME
BY REFERENCE BD-HANDLE
BY VALUE 2 *> SQLITE_OPEN_READWRITE
BY VALUE 0
returning BD-STATUS
end-call.
string "SELECT * from artists WHERE name='Body Count' " delimited by size
X"00" delimited by size
into BD-SQL-QUERY
WITH POINTER num-bytes.
move zero to zTail
call "sqlite3_prepare_v2" & X"00" WITH STDCALL LINKAGE
USING
BY VALUE BD-HANDLE
BY CONTENT BD-SQL-QUERY
BY VALUE num-bytes
by reference pStmt
by VALUE zTail
returning BD-STATUS
end-call.
*loop
call "sqlite3_step" & X"00" WITH STDCALL LINKAGE
using
by reference pStmt
returning BD-STATUS
end-call.
evaluate ESTADOS-BD
when SQLITE-ROW
display "SQLITE-ROW"
when SQLITE-DONE
display "SQLITE-DONE"
end-evaluate
¿Qué tiene de malo esta parte del código?
call "sqlite3_step" da el error
SQLITE_MISUSE = 21. *> Library used incorrectly
Powercobol v9
Gracias,
José