android sqlite 数据库中“#5018”附近的语法错误
Syntax error near "#5018" in android sqlite database
在Android应用程序中,我有一个数据库来存储联系人。在那里,我有一个 "Number" 类型的 "Text" 列。
执行以下查询时出现 syntax error near: "#5018" (code 1)
错误:
string passedNumber = "#5018";
db.delete("Contact_Table, "Number=" + passedNumber, null);
但是如果我使用 quotte aroung 这样的数字:
db.delete("Contact_Table, "Number='" + passedNumber + "'", null);
那么它工作正常。
我担心的是,尽管我有 Text
类型的 Number
列,但为什么会出现错误。
因为 #5018
在语法上不是数字或任何其他有效结构。当你用单引号将它括起来时 '#5018'
它变成了一个字符串文字并且在语法上是正确的。 5018
将是语法上有效的数字文字。
列类型关联与文字语法无关。
在Android应用程序中,我有一个数据库来存储联系人。在那里,我有一个 "Number" 类型的 "Text" 列。
执行以下查询时出现 syntax error near: "#5018" (code 1)
错误:
string passedNumber = "#5018";
db.delete("Contact_Table, "Number=" + passedNumber, null);
但是如果我使用 quotte aroung 这样的数字:
db.delete("Contact_Table, "Number='" + passedNumber + "'", null);
那么它工作正常。
我担心的是,尽管我有 Text
类型的 Number
列,但为什么会出现错误。
因为 #5018
在语法上不是数字或任何其他有效结构。当你用单引号将它括起来时 '#5018'
它变成了一个字符串文字并且在语法上是正确的。 5018
将是语法上有效的数字文字。
列类型关联与文字语法无关。