在MySQL中插入序列号时出错

时间:2016-10-21 09:28:43

标签: android mysql sqlite

我必须在数据库的空列中插入从1到N的序号。运行我的代码时,Android Studio给出了以下错误:

Caused by: android.database.sqlite.SQLiteException: unrecognized token: ":" (code 1): , while compiling: SELECT @i:=0; UPDATE table_name SET column_one = @i:=@i+1;

我的代码行:

    db.execSQL("SELECT @i:=0; UPDATE table_name SET column_one = @i:=@i+1;");

(请注意,当我在括号之间更改MySQL语句时,代码会运行并执行)

SQL代码的来源:

Insert sequential number in MySQL

我是Java,Android Studio和MySQL的新手。

我在这里缺少什么?

帮助我理解为什么MySQL @i:= @ i + 1表达式在Android Studio中无法正常运行。

提前致谢。

2 个答案:

答案 0 :(得分:0)

试试这个。

database.execSQL("SELECT " + @i + " :=0   ;  UPDATE table_name SET column_one = " +  @i + " := " + @i "+1;");

答案 1 :(得分:0)

因为android数据库使用的是sqlite,但sqlite不支持“@”,如果你想批量处理,我建议你使用Java