mysql创建数据库时怎么将主键设置为UUID,建表语句怎么写

mysql创建数据库时怎么将主键设置为UUID,建表语句怎么写,第1张

你们的想法是不是,想在建表时为id指定uuid,然后每次插入数据都会自动为每一条数据生成uuid呢?就像auto_increment主键自增一样呢?

我只想说

you

are

too

young!

我一开始是这样做的:

create

table

product(

id

varchar(36)

primary

key

default

uuid()

sql语句报错。

后来查了查资料,发现mysql好像并不支持在建表时,为某一字段指定默认函数值。但是在Oracle数据库中,却支持这样干,也就可以实现插入数据时,自动生成uuid。

所以在mysql中只能在插入数据时,将uuid()函数值赋值给id字段。

后来,我又想了一个方案,我可以去写一个触发器,每次在执行插入 *** 作时,都为id字段更新为uuid(),但是这种方式还是存在很多问题的,这里就不说了。

总而言之,因为id在业务层面一般是无意义的,如果只是为了实现主键自增长,那请用auto_increment吧,如果您有更好的解决方式,请务必回复我,不胜感谢。

1.安装应用到手机A,获取UUID,UUID字符串是:5115e5a0a5464fcca1445fdb73e528b8,同时把UUID保存到钥匙串。

2.卸载应用重新安装,获取钥匙串里保存的UUID是否有值。通过测试验证,钥匙串里有对应保存的UUID,并且UUID字符串是:5115e5a0a5464fcca1445fdb73e528b8(同第1步保存的一样)。

3.反复卸载、安装进行多次,得到的结果(同第2步一样)。

4.恢复出厂设置(跟着提示进行就行,有点繁琐)

4.1把手机恢复出厂设置(抹掉所有内容和设置),抹掉时不进行备份 *** 作,选择立即抹掉。

4.2进行重新设置手机,设置手机时有一步骤是选择恢复备份的界面,选择设置新的iPhone。(就是不选择恢复备份的iCloud备份的数据)。

5.完成第4步以后,手机恢复正常使用。在进行安装应用到手机A。这时,通过测试验证钥匙串里已经没有了之前保存的UUID。这时是重新获取一个新的UUID进行保存到Keychain(钥匙串),UUID字符串是:e56b79c897c847dc82461bad40937cbd。

6.这时把iCloud里的钥匙串打开,进行iCloud数据备份。

7.再次进行恢复出厂设置(换个方式进行)

7.1把手机恢复出厂设置(抹掉所有内容和设置),抹掉时进行备份 *** 作,备份以后进行抹掉。

7.2进行重新设置手机,设置手机时有一步骤是选择恢复备份的界面,这时选择恢复iCloud备份的数据。

8.在次进行安装应用到手机A。这时,通过测试验证,钥匙串里有对应保存的UUID,并且UUID字符串是:e56b79c897c847dc82461bad40937cbd(同第5步保存的一样)。

1.打开手机的iCloud云盘进行数据备份

2.打开iCloud里的钥匙串选项

3.在重新恢复出厂设置的时候(抹掉所有内容和设置),要选择iCloud备份的数据后,在进行抹掉 *** 作。

4.在重新设置手机的时候要保证填写iCloud备份是时对应的iCloud账号(第3步的iCloud账号)。

5.要选择iCloud备份数据恢复设置。

6.不能对手机进行刷机 *** 作。

(通过测试,我个人认为,手机本人刷机后(非一般 *** 作),重新开机,填写iCloud账号同一个的情况下,也可以恢复钥匙串,得到用户应用和设备的唯一性)。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11231866.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存