1

在 infomix 我见过这样的查询

select rowid from table where condition

并且对于更新,他们使用相同的行 ID

update table set field="val" where rowid=rowid

mysql数据库中是否有类似的东西

douuid函数在 mysql 中做同样的事情。

实际上我的问题是,表中没有主键,所以在将 infomix 查询移植到 mysql 时,我需要考虑 where 条件中的所有字段。如果有替代解决方案,请提供帮助,

4

3 回答 3

1

为什么不...

select  rowid  from  table  where  condition
                                      |
                                      V
update table set field="val" where condition   
于 2013-07-09T03:48:56.640 回答
0

如果要将查询从 informix 移植到 mysql,为什么不修改表以包含主键?

您甚至可以命名 PKrowid以维护 informix 和 mysql 查询之间的可移植性。

ALTER TABLE table
ADD rowid MEDIUMINT NOT NULL AUTO_INCREMENT KEY
于 2013-07-09T05:35:58.780 回答
0
you can use same condition for both query which you pass on first query, it returns you unique row..

试试这个

select  rowid  from  table  where  condition

并且对于更新使用与上述相同的条件而不是row id

update table set field="val" where rowid=rowid
于 2013-07-09T05:46:12.853 回答