我必须将用户配置文件存储在具有 12 位唯一 ID 的 LDAP 中,因此考虑通过创建序列并在 Java 代码(seq.nextVal())中访问它来使用数据库。但是我们公司只支持mysql,mysql不支持sequence。
是否有解决方法来使用 mysql 来实现这一点。
MySQL 支持 INTEGER 数据类型的自动递增。参考
http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html
如果要制作字段UNIQUE
,则可以将其设置为PRIMARY KEY
.
例如,您可以将ID BIGINT PRIMARY KEY AUTO INCREMENT
其用作您的字段。
如果您在 Java 应用程序中需要此值,您可以:
在你的 MySQL 数据库中生成 id
在您的 Java 应用程序中获取价值
使用该值将其保存在您的 LDAP 中
作为测试,这将确保您的所有元素都有 12 位数字(基于您的最后评论):
CREATE TABLE uniqueids(id BIGINT PRIMARY KEY AUTO_INCREMENT);
INSERT INTO uniqueids VALUES(100000000000);
INSERT INTO uniqueids VALUES(null);
SELECT *
FROM uniqueids
在 MySQL 5.0 上测试