1、- 1 - 外文原文 SQLite Named Parameters The third parameter binding method is using named parameters. Whereas you can assign your own numbers using numbered parameters, you can assign alphanumeric names with named parameters. Likewise, as numbered parameters are prefixed with a question mark (?), you ide
2、ntify named parameters by prefixing a colon (:) to the parameter name. Consider the following code snippet (taken from parameters.c): name = “Mackinaw Peaches“; sql = “insert into episodes (id, cid, name) values (:cosmo,:cosmo,:newman)“; rc = sqlite3_prepare(db, sql, strlen(sql), sqlite3_bind_int( s
3、tmt, sqlite3_bind_parameter_index(stmt, “:cosmo“), 10); sqlite3_bind_text( stmt, sqlite3_bind_parameter_index(stmt, “:newman“), name, strlen(name), SQLITE_TRANSIENT ); sqlite3_step(stmt); sqlite3_finalize(stmt); This example is identical to the previous example using numbered parameters, except it u
4、ses two named parameters called cosmo and newman instead. Like positional parameters, named parameters are automatically assigned numbers by sqlite3_prepare(). While the numbers assigned to each parameter are unknown, you can resolve them using sqlite3_bind_parameter_index(), which takes a parameter name and returns the correspondingparameter number. This is the number you use to bind the value to its parameter. All in all, named parameters mainly help with legibility more than anything else. P