mirror of
https://github.com/servalproject/serval-dna.git
synced 2025-02-23 10:30:19 +00:00
Issue #69: transient text SQL binding
This commit is contained in:
parent
41e18e587d
commit
d18e48868d
@ -303,6 +303,8 @@ enum sqlbind_type {
|
||||
INT64, // int64_t value
|
||||
INT64_TOSTR, // int64_t value
|
||||
UINT64_TOSTR, // uint64_t value
|
||||
TEXT, // const char *text,
|
||||
TEXT_LEN, // const char *text, int bytes
|
||||
STATIC_TEXT, // const char *text,
|
||||
STATIC_TEXT_LEN, // const char *text, int bytes
|
||||
STATIC_BLOB, // const void *blob, int bytes
|
||||
|
@ -565,6 +565,19 @@ int _sqlite_vbind(struct __sourceloc __whence, int log_level, sqlite_retry_state
|
||||
BIND_RETRY(sqlite3_bind_text, str, -1, SQLITE_TRANSIENT);
|
||||
}
|
||||
break;
|
||||
case TEXT: {
|
||||
const char *text = va_arg(ap, const char *);
|
||||
BIND_DEBUG(TEXT, sqlite3_bind_text, "%s,-1,SQLITE_TRANSIENT", alloca_str_toprint(text));
|
||||
BIND_RETRY(sqlite3_bind_text, text, -1, SQLITE_TRANSIENT);
|
||||
}
|
||||
break;
|
||||
case TEXT_LEN: {
|
||||
const char *text = va_arg(ap, const char *);
|
||||
int bytes = va_arg(ap, int);
|
||||
BIND_DEBUG(TEXT_LEN, sqlite3_bind_text, "%s,%d,SQLITE_TRANSIENT", alloca_str_toprint(text), bytes);
|
||||
BIND_RETRY(sqlite3_bind_text, text, bytes, SQLITE_TRANSIENT);
|
||||
}
|
||||
break;
|
||||
case STATIC_TEXT: {
|
||||
const char *text = va_arg(ap, const char *);
|
||||
BIND_DEBUG(STATIC_TEXT, sqlite3_bind_text, "%s,-1,SQLITE_STATIC", alloca_str_toprint(text));
|
||||
|
Loading…
x
Reference in New Issue
Block a user