代码之家  ›  专栏  ›  技术社区  ›  Shiniece

在进度插入时获取RowID

  •  0
  • Shiniece  · 技术社区  · 9 年前

    我有一个没有主键的表。我需要向表中添加一个主键,所以我添加了一个名为“ID”的列。我正在尝试使用rowid将唯一的id插入到这个新列中。插入新记录时,如何获取rowid。这在进度数据库中。

    INSERT INTO PUB.DETAILS (LASTUPDATED, FORMERVALUE, NEWVALUE, ID) 
    VALUES ('09/16/2015', 'NEW ITEM', 'ESISTING ITEM', '?')
    
    2 回复  |  直到 9 年前
        1
  •  1
  •   marc_s HarisH Sharma    8 年前

    进度数据库不必有密钥。至少不是以“SQL方式”。键(以及关系)由业务逻辑(即如何使用字段)定义。

    既然您似乎在使用一个正在使用的数据库,那么可能只是因为您不需要密钥-已经有某种逻辑可以完成这项工作了?

    Progress数据库中有一种叫做“序列”的东西可以用来增加值——我真的不知道如何使用odbc或sql访问它们。

    进行中ABL(4GL) NEXT-VALUE(sequence-name)

    Here's some help about SQL and Progress dbs .

        2
  •  -1
  •   Corona    9 年前

    只需将ID列设置为自动递增,这样就不需要知道最后插入的ID列。