|
การนำ GUID มาใช้ประโยชน์ในการเป็น Key (VB.Net, C# , SQL Server , MySQL, PHP) |
การนำ GUID มาใช้ประโยชน์ในการเป็น Key (VB.Net, C# , SQL Server , PHP) สำหรับ GUID เป็น Globally Unique Identifier โดยปกติแล้วมันจะเป็นการอ้างถึงชุดของข้อความที่ได้จาก Computer และ Software ของเครื่องที่ติดตั้งและใช้งาน เช่น Registry จะมีการอางถึง GUID กับ Application ID ที่ติดตั้ง ซึ่ง GUID ที่ได้จะแตกต่างกันไปในแต่ล่ะเครื่อง ซึ่งด้วยเหตุผลนี้เองเมื่อ GUID ถูกใช้งานที่เครื่องใดเครื่องหนึ่ง ณ เวลาใด เวลาหนึ่ง ชุดของข้อความจาก GUID จะมีค่าที่แตกต่างกันไปทุกครั้ง และปัจจุบัน คำสั่งที่ใช้สำหรับการสร้าง GUID สามารถเรียกใช้จากโปรแกรมภาษาต่าง ๆ เช่น VB.Net , C# หรือแม้กระทั่งบน SQL Server Database ก็มีคำสั่งที่สามารถดึงค่า GUID ออกมาได้เช่นเดียวกัน
ตัวอย่าง GUID
21EC2020-3AEA-4069-A2DD-08002B30309D
GUID มีขนาด 128-bit Interger (16 byte) โดยเราสามารถนำค่า GUID นี้ไปประยุกต์การใช้งานได้หลากหลาย เช่น การใช้เป็น Key ที่ทดแทนต่าที่เป็น Auto Number (Identity) หรืออาจจะนำไปใช้เป็นพวก ค่าค่าง ๆ เช่น ชื่อไฟล์ , ชื่อไอดี , โฟเดอร์
1. GUID บน SQL Server Database
SELECT NEWID()
Result
870D389F-161C-484D-A3B4-C73CD90A427A
ใน SQL Server เราสามารถเอาค่า GUID จาก NEWID() ไปใช้ประโยชน์ต่าง ๆ ได้เลย เช่น การเป็น PK , FK หรืออื่น ๆ
2. GUID บน .Net Framework
VB.Net
System.Guid.NewGuid().ToString()
C#System.Guid.NewGuid().ToString();
Result
7949323f-af1d-4bc0-b638-7e1e5f16dab4
3. GUID บน PHP
<?php
function GUID()
{
if (function_exists('com_create_guid') === true)
{
return trim(com_create_guid(), '{}');
}
return sprintf('%04X%04X-%04X-%04X-%04X-%04X%04X%04X', mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(16384, 20479), mt_rand(32768, 49151), mt_rand(0, 65535), mt_rand(0, 65535), mt_rand(0, 65535));
}
echo GUID();
?> Result
e51b82cc-4dc7-4ec9-8185-1226a5903dfe
4. GUID บน MySQL
SELECT UUID()
ใน MySQL จะใช้ UUID()
5. GUID บน Java
import java.util.UUID;
UUID uuid = UUID.randomUUID();
String randomUUIDString = uuid.toString();
6. GUID บน Oracle Database
sys_guid()
select sys_guid() from dual
|
|
|
|
|
|