Android 带约束的SQL Insert语句
我正忙着在androidstudio中编写insert语句,首先必须检查数据库中是否存在数据,如果不存在,则必须插入数据Android 带约束的SQL Insert语句,android,sql,azure-sql-database,Android,Sql,Azure Sql Database,我正忙着在androidstudio中编写insert语句,首先必须检查数据库中是否存在数据,如果不存在,则必须插入数据 if (name.trim().equals("") || supp.trim().equals("") || range.trim().equals("") || size.equals("") || price.equals("")) z = "Please enter all fields"; else { try {
if (name.trim().equals("") || supp.trim().equals("") || range.trim().equals("") || size.equals("") || price.equals(""))
z = "Please enter all fields";
else {
try {
con = connectionclass(); // Connect to database
if (con == null) {
z = "Check Your Internet Access!";
} else {
String query = "BEGIN" +
"IF NOT EXISTS(Select * from cc_lining)" +
"BEGIN " +
"INSERT INTO cc_lining (lining_id,lining_name, lining_range, lining_supplier, lining_width, lining_unit_price) VALUES ('" + id.toString() + "','" + name.toString() + "','" + range.toString() + "','" + supp.toString() + "','" + size.toString() + "','" + price.toString() + "')" +
"END" +
"END";
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
if (rs.next()) {
isSuccess = true;
con.close();
} else {
z = "Invalid!";
isSuccess = false;
}
}
} catch (Exception ex) {
isSuccess = false;
z = ex.getMessage();
}
}
return z;
当我运行代码时,我得到一个错误,说不正确的Syntex near NOT
不正确的Syntex near NOT
逻辑
在第一次运行时,选择与主键相关的语句,如
演示
Cursor cursor = null;
String sql ="SELECT * FROM cc_lining WHERE lining_id=" + id + ";
cursor= db.rawQuery(sql,null);
if(cursor.getCount()>0){
// Data Fount. Query for UPDATE
}else{
// Data Not Found. You should INSERT your Record.
}
cursor.close();
我需要在表本身中添加数据,而不是创建一个完整的表。在连接过程中,如果关键字
BEGIN
和之间缺少空格,例如,尝试更改为String query=“BEGIN
”+`即BEGIN
之后的尾随空格。