【MySQL】navicat for Mysql查询数据不能直接修改
我们使用navicat for Mysql工具编写SQL时,查询出来的数据并不能直接进行修改操作,只能再次打开表找到需要修改的数据进行修改数据,但有些时候表字段比较多,且表中的数据量也比较大,我们并不能快速定位到需要修改的那条记录。这个问题困扰了不少同学。今天,小编就在这里教教大家,如何在新建查询时对查询的结果进行修改。首先,我们来看看问题的现象。原来的sql语句如下:SELECTj...
我们使用navicat for Mysql工具编写SQL时,查询出来的数据并不能直接进行修改操作,只能再次打开表找到需要修改的数据进行修改数据,但有些时候表字段比较多,且表中的数据量也比较大,我们并不能快速定位到需要修改的那条记录。这个问题困扰了不少同学。今天,小编就在这里教教大家,如何在新建查询时对查询的结果进行修改。
首先,我们来看看问题的现象。原来的sql语句如下:
SELECT
jobName,
jobGroup,
jobStatus,
cronExpression,
description,
beanClass,
springId,
methodName,
createTime,
updateTime
FROM
`schedule_job`;
结果如下:
如果表中没有设置或添加一列作为primary key(主键)的话,是无法直接进行修改操作的。
解决办法:我们只需要添加或设置一列id,并设置为primary key并且自动递增,就可以进行修改操作了。
在上述SQL中,我们需要在SQL上稍作改动就可以在新建查询窗口直接对数据进行修改了,在SQL中加上对主键Id字段或将select后面的查询的条件改为【*】就可以了。
SQL语句如下:
SELECT
jobId,
jobName,
jobGroup,
jobStatus,
cronExpression,
description,
beanClass,
springId,
methodName,
createTime,
updateTime
FROM
`schedule_job`;
或者
SELECT
*
FROM
`schedule_job`;
添加ID查询后的结果如下图所示:
这时候却发现【只读】属性不见了 ,那么我们就可以对在查询窗口对数据进行修改了。
那么问题来了,这只是对单表的操作,若是对多张表关联查询,查询的结果是否还能在查询窗口进行修改操作呢?能?为什么?不能?又为什么?
最后这个问题就留给大家去讨论吧,欢迎大家在评论区进行讨论与留言。
更多推荐
所有评论(0)