如何在搜索数据库sqlite时获取列名?

时间:2013-10-23 04:58:00

标签: mysql sqlite cordova

我有一个表名CaseTable。我想让coloumn CaseName中的所有条目具有相同的文本。

CaseName    data
1           data is well 

 2        check

 3         test

 4          data

我喜欢这样,但收到错误

db.transaction(test,errorCB);

function test(tx) {
  alert("test")
    tx.executeSql('SELECT CaseName FROM CaseTable where CaseTable MATCH' +"'+ data+'" ,[], testSuccess, testerrorDB);

  //  tx.executeSql('INSERT OR IGNORE INTO CaseTable(CaseName,CaseDate,TextArea) VALUES ("' + $('.caseName_h').val() + '", "' + $('.caseDate_h').val() + '","' + $('.caseTextArea_h').val() + '")');



}




function testSuccess(tx, result) {


    var len = result.rows.length;
 alert(result+"result");
 alert(len+"len");


}

1 个答案:

答案 0 :(得分:0)

“具有相同文本的CaseName”(来自您的问题描述)意味着完全匹配。那将是:

SELECT CaseName FROM CaseTable WHERE CaseName='foo';

如果您不想要严格匹配并且不使用某种类型的FTS(全文搜索)扩展,您可能只想使用LIKE关键字(不区分大小写)而不是MATCH,然后如果您想要列匹配对于你的+数据+变量:

CaseName foo开头,然后使用'foo%'作为+数据+字符串变量

CaseName 包含 foo然后使用'%foo%'作为您的+数据+字符串变量