SQLite3懂的来,给最高分
发布网友
发布时间:2022-04-07 17:24
我来回答
共2个回答
热心网友
时间:2022-04-07 18:54
不可以修改从stmt中读取的值。
1、下面的语句可以从表test中读取记录:
pcSql = "SELECT number,name from test where number = '" + strNumber + "';";
sqlite3_prepare(pSqlite3,pcSql,(int)strlen(pcSql),&pStmt,&c_pcTail);
sqlite3_step(pStmt);
其中pStmt是指向数据集的指针。
从SQLite3的表中读取pStmt指向的数据集,只是内存中存在的数据结构,它与SQLite3的表再无关系。这就是轻量数据库的特点。它只做必须做的。
而不象sql server和oracal 那样,有后台进程管理与数据库双向连接的recordSet。
2、可以使用下列语句修改表test中的记录:
pcSql = "INSERT INTO test(number,name) VALUES("+ strNumber + "','"+ strName + "')";
sqlite3_exec(pSqlite3,pcSql,NULL,NULL,&pcErrMsg);
热心网友
时间:2022-04-07 20:12
SQLite主要用于android等轻量级应用程序,语法跟一般SQL一样,你的问题我没太 看懂,给的信息也不全。但是想通过SQL完成UPDATE需要知道ID(一般为数据库表主键),以下是参*,希望对你 有帮助。
UPDATE 表名 SET 字段 =值 (可以 多列更新)
WHERE ID=值追问我的意思是说用SQLite从表中检索的结果集可以修改吗,ado你知道么,就像recordSet那样去操作
追答SELECT选择出的结果相当于一个视图,而视图的改变是因为原始表的数据发生改变。所以你UPDATE相关表后SELECT 出的结果集自然就变了。
注:视图不可直接更新操作