我知道HashCode是一种方式,但我注意到一段时间后HashCode发生了变化。因此,我有一个允许购买东西的应用程序,每个文章都由现在从哈希码生成的代码识别并存储在db PostgreSQL中,但我发现了这个问题所以我无法使用它。第二天,我尝试在db上识别这篇文章,哈希码已经改变,所以它不起作用。什么是解决方案?非常感谢! 我为文章生成代码的对象是这样的
22-09-2015_foo
* master
-
答案 0 :(得分:1)
您不应该手动生成db主键。最好的方法是让数据库为每条记录生成唯一的主键。这样,您可以确保不会发生主键冲突,代码也不会更改。
在PostreSQL中,您可以使用SERIAL
列类型来实现这一目标。例如:
CREATE TABLE tablename (
colname SERIAL
);
另一种方法是使用序列,但它有点复杂。