28 lines
1.1 KiB
Plaintext
28 lines
1.1 KiB
Plaintext
--
|
|
-- demo\rosetta\Parametrized_SQL_statement.exw
|
|
--
|
|
include pSQLite.e
|
|
|
|
sqlite3 db = sqlite3_open(":memory:")
|
|
|
|
integer res = sqlite3_exec(db,`create table players (name, score, active, jerseyNum)`)
|
|
res = sqlite3_exec(db,`insert into players values ('Roethlisberger, Ben', 94.1, 1, 7 )`)
|
|
res = sqlite3_exec(db,`insert into players values ('Smith, Alex', 85.3, 1, 11)`)
|
|
res = sqlite3_exec(db,`insert into players values ('Doe, John', 15, 0, 99)`)
|
|
res = sqlite3_exec(db,`insert into players values ('Manning, Payton', 96.5, 0, 123)`)
|
|
|
|
pp({"Before",sqlite3_get_table(db, "select * from players")},{pp_Nest,2})
|
|
|
|
sqlite3_stmt pStmt = sqlite3_prepare(db, `update players set name=?, score=?, active=? where jerseyNum=?`)
|
|
sqlite3_bind_text(pStmt,1,"Smith, Steve")
|
|
sqlite3_bind_double(pStmt,2,42)
|
|
sqlite3_bind_int(pStmt,3,true)
|
|
sqlite3_bind_int(pStmt,4,99)
|
|
res = sqlite3_step(pStmt);
|
|
if res!=SQLITE_DONE then ?9/0 end if
|
|
if sqlite3_finalize(pStmt)!=SQLITE_OK then ?9/0 end if
|
|
|
|
pp({"After",sqlite3_get_table(db, "select * from players")},{pp_Nest,2})
|
|
|
|
sqlite3_close(db)
|