描述
sqlite3_bind_parameter_name函数返回准备语句P中第N个SQL参数的名称。“?NNN”或“:AAA”或“@AAA”或“$ AAA”形??式的SQL参数的名称是字符串“?NNN”或“:AAA”或“@AAA”或“$ AAA”分别。换句话说,最初的“:”或“$”或“@”或“?”被列为名称的一部分。“?”形式的参数没有以下整数没有名称,并被称为“无名”或“匿名参数”。
C / C ++语法
const char *sqlite3_bind_parameter_name(sqlite3_stmt*, int); |
PB语法
FUNCTION sqlite3_bind_parameter_name ( _ BYVAL hStmt AS DWORD, _ BYVAL idx AS LONG _ ) AS LONG |
参数
pStmt
[in]语句句柄。
idx
[in]参数索引。第一个主机参数的索引为1,而不是0。
返回值
如果值IDX超出范围,否则IDX参数无名,则返回NULL。即使命名参数最初在sqlite3_prepare16或sqlite3_prepare16_v2中指定为UTF-16,返回的字符串也始终使用UTF-8编码。
C ++实现代码
/*
** Return the name of a wildcard parameter. Return NULL if the index
** is out of range or if the wildcard is unnamed.
**
** The result is always UTF-8.
*/
SQLITE_API const char *sqlite3_bind_parameter_name(sqlite3_stmt *pStmt, int i){
Vdbe *p = (Vdbe*)pStmt;
if( p==0 || i<1 || i>p->nzVar ){
return 0;
}
return p->azVar[i-1];
}