1

ユーザーに割り当てる必要がある API キーがあります。それらはユーザーごとに一意である必要がありますが、0 [0,1,2,3,4,5...] から再利用できますが、制限があります。 、および機能固有のものです (要求されない限り、すべてのユーザーがそれらを必要とするわけではありません)。

今のところ、ユーザー リクエスト キーとして最大数に 1 を追加しています。

[ 0, 1, null, 3, 6, 7, null, 10, 11, 12, null, null...]

しかし、これは徐々に限界に達しており、それらを再利用する必要があります:[2、4、5、8、9...]キーを常に再利用するには、sqlalchemy で未使用の最小値を取得するにはどうすればよいですか?

4

1 に答える 1

1

このSQLAlchemy構文については完全にはわかりませんが、SQLに関しては、この回答で提案されているようなことをしたいと思うかもしれません。引用:

SELECT MIN(t1.ID + 1) AS nextID
FROM tablename t1 LEFT JOIN tablename t2
ON t1.ID + 1 = t2.ID
WHERE t2.ID IS NULL

適切な SQLAlchemy の方法が見つからない場合は、いつでもセッション オブジェクトでwith_statementまたはexecuteメソッドを使用できます (SQL ステートメントを自由に定義できます)。一般に、これを構築する方法については、このページを参照してください。

于 2013-09-17T17:07:01.427 に答える