diff --git a/SQL/README.md b/SQL/README.md index 8a78f44..91de79a 100644 --- a/SQL/README.md +++ b/SQL/README.md @@ -19,6 +19,9 @@ 3.调用方法: 例如:select dbo.Fn_NextSnowId(rand()) 说明:必须带 dbo. å‰�ç¼€ + +4.自动赋值: + 如果主键设置为雪花ID类型(bigint),å�¯ä»¥å°†è¯¥ä¸»é”®çš„ “默认值或绑定â€� 设置为 ([dbo].[Fn_NextSnowId](rand())) ``` 在执行函数之å‰�,必须设置好以下3个å�‚数: diff --git a/SQL/SQLServer主键自动赋值(雪花ID类型).png b/SQL/SQLServer主键自动赋值(雪花ID类型).png new file mode 100644 index 0000000..373b578 Binary files /dev/null and b/SQL/SQLServer主键自动赋值(雪花ID类型).png differ diff --git a/SQL/sqlserver.sql b/SQL/sqlserver.sql index 65c6f34..0146368 100644 --- a/SQL/sqlserver.sql +++ b/SQL/sqlserver.sql @@ -11,7 +11,17 @@ 3.µ÷Ó÷½·¨£º ÀýÈ磺select dbo.Fn_NextSnowId(rand()) ˵Ã÷£º±ØÐë´ø dbo. ǰ׺ + +4.×Ô¶¯¸³Öµ£º + Èç¹ûÖ÷¼üÉèÖÃΪѩ»¨IDÀàÐÍ£¨bigint£©£¬¿ÉÒÔ½«¸ÃÖ÷¼üµÄ ¡°Ä¬ÈÏÖµ»ò°ó¶¨¡± ÉèÖÃΪ ([dbo].[Fn_NextSnowId](rand())) */ + +-- ÏÈɾ³ýº¯Êý +if exists(select * from sys.objects where name='Fn_NextSnowId') + drop function dbo.Fn_NextSnowId; +Go + +-- ÔÙ´´½¨º¯Êý CREATE function dbo.Fn_NextSnowId ( @RandomSeed float -- Éú³ÉIDµÄº¯Êý£¬ÐèÒªÓÐÒ»¸öËæ»úÊý£¬ÔÚµ÷ÓÃʱ£¬´«Èëϵͳº¯Êý rand() ¼´¿É