mysql 为啥在执行清空表语句之后无法插入数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 为啥在执行清空表语句之后无法插入数据相关的知识,希望对你有一定的参考价值。

代码如下:
public ResultSet conten(int id)throws SQLException

DbConn conn = new DbConn();
String sql="truncate table temporary";
conn.save(sql);
System.out.print("清空temporary表中的记录"+sql);
String sql1="select distinct content from temporary where id='"+id+"'";
rs=conn.query(sql1);
System.out.println("向temporary表中添加新数据成功!");
return rs;


执行sql则无法执行sql1,注销掉sql则能正常插入数据,这是怎么回事呢?

参考技术A 你的sql1语句是查询的语句,如果执行了sql的截断语句清空了表,则查询的结果为空了,也就没有返回值。
插入数据应该用:
insert into temporary (字段1,字段2) value (值1,值2);本回答被提问者采纳
参考技术B String sql1="select distinct content from temporary where id='"+id+"'";
rs=conn.query(sql1);

这个哪里是插入啊
这是查询啊
你刚才都清空了
查询当然没有了

插入时insert into 啊
参考技术C String sql1="select distinct content from temporary where id='"+id+"'";
中的distinct是去除重复的意思
这里用是不对的,可以改为
select content from temporary where id='"+id+"'";

在mysql workbench中,通过查询语句,为啥无法修改表中的数据?需要改啥设置吗?

是不是打开表不能双击数据直接修改啊,如果是那就是没设主键,设了主键后最后一行的数据全是null,这样就能双击数据修改了 参考技术A 在数据表中右键--edit table data

以上是关于mysql 为啥在执行清空表语句之后无法插入数据的主要内容,如果未能解决你的问题,请参考以下文章

ORACLE11g 反复插数据删数据,删索引建索引,对数据文件和表空间有啥影响

怎么往mysql中写入数据?

MySQL插入数据因外键约束失败?

sql的自增列如何重置

Java中写插入语句向数据库中的表插入??

mysql 怎样清空一个数据库中的所有表