sqlite:生成唯一的字母数字主键

时间:2014-03-27 01:40:49

标签: sql sqlite

对于sqlite表,我希望主键是字母数字,而不是整数。如果我有一个4位NCHAR(4)列作为主键,这意味着36 ^ 4或(10个数字+ 26个字母)^ 4 => 160万个可能的唯一密钥。够好了!我找到了sqlite功能组合

hex(randomblob(2))

它会给我四个随机十六进制值,但我不知道我的范围是什么。我假设如果它是十六进制的,我每个地方只能获得16个可能的值,但是对于256个可能的随机值是16 ^ 2,或者是16 ^ 4,因为它是四个地方,或者完全是不同?我真的更喜欢生成一个四位随机字母数字键。另外,如何在实际添加的记录中获取这些值?使用简单的整数键,可以在表格中创建AUTOINCREMENT。我猜它不能在CREATE TABLE中完成....这需要一个单独的触发器,还是在记录创建时在INSERT语句中完成?

0 个答案:

没有答案