为什么前一个execsql(sql)语句增加不进去???

create table person_data(id integer primary key autoincrement, name text, age integer, gonghao integer);

        String name = "lisi";
        int age = 11;
        int gonghao = 1111;
        ma_db.execSQL("insert into person_data(name, age, gonghao)values(" +name+ "," +age+ "," +gonghao+ ")");
        ma_db.execSQL("insert into person_data(name, age, gonghao)values('lisi', 11, 1111)");

sql

3个回答

ma_db.execSQL("insert into person_data(name, age, gonghao)values('" +name+ "'," +age+ "," +gonghao+ ")");应该是文本的name少一对单引号

element_it
element_it 不好意思,错怪你了,你的方法是对的,我把单引号放在了 'name' 上了,
3 年多之前 回复
element_it
element_it 试过了,不管用
3 年多之前 回复

"insert into person_data(name, age, gonghao)values('" +name+ "'," +age+ "," +gonghao+ ")"

element_it
element_it 谢谢,
3 年多之前 回复

不确定你用的是什么语言,但是建议用SQL占位符来替换你现在的拼接。

拼接容易导致SQL注入问题。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问