UUID是一个由4个连字号(-)将32个字节长的字符串分隔后生成的字符串,总共36个字节长。比如:550e8400-e29b-41d4-a716-446655440000

http://gohands.blogbus.com/logs/147479174.html

GUID 是微软对UUID这个标准的实现。UUID是由开放软件基金会(OSF)定义的。UUID还有其它各种实现,不止GUID一种。比如我们这里在Java中用到的。

http://baike.baidu.com/view/1052579.htm

COMB(combine)型是数据库特有的一种设计思想,可以理解为一种改进的GUID,它通过组合GUID和系统时间,以使其在索引和检索事有更优的性能。 
http://blog.csdn.net/happyflystone/article/details/1903854

数据库中没有COMB类型,它是Jimmy Nilsson在他的“The Cost of GUIDs as Primary Keys”一文中设计出来的。

COMB数据类型的基本设计思路是这样的:既然UniqueIdentifier数据因毫无规律可言造成索引效率低下,影响了系统的性能,那么我们 能不能通过组合的方式,保留UniqueIdentifier的前10个字节,用后6个字节表示GUID生成的时间(DateTime),这样我们将时间 信息与UniqueIdentifier组合起来,在保留UniqueIdentifier的唯一性的同时增加了有序性,以此来提高索引效率。

http://hi.baidu.com/%CA%AB%D5%B9/blog/item/407fd23f77d5eacf7c1e7122.html

Android 使用代码:

JDK1.5开始支持UUID,Android也支持UUID http://developer.android.com/reference/java/util/UUID.html

那么生成UUID变成了一件简单的事,因为JDK实现了UUID: java.util.UUID,直接调用即可. 
UUID uuid  =  UUID.randomUUID(); 
String s = UUID.randomUUID().toString();//用来生成数据库的主键id非常不错。

import java.util.UUID;
UUID uid = UUID.randomUUID();

SQLIte 使用例子

// 插入数据
UUID locationID = UUID.randomUUID();
ContentValues initialValues = new ContentValues();
initialValues.put("rowid", locationID.toString());
//...other stuff...//
db.insert(DATABASE_TABLE_LOCATIONS, null, initialValues);
// 搜索
Cursor c =
db.query(true, DATABASE_TABLE, new String[] {
                "rowid", "stuff", "things"}, "rowid='" + rowId + "'",
null, null, null, null);

以上代码出自: http://groups.google.com/group/android-developers/browse_thread/thread/4a6c40702107fa16

SQL 语句

CREATE TABLE Users
(
   UserGuid TEXT PRIMARY KEY NOT NULL,
   FirstName TEXT,
   LastName TEXT
)
INSERT INTO Users (UserGuid, FirstName, LastName)
VALUES ('e7bf9773-8231-44af-8d53-e624f0433943', 'Bobby', 'Bobston')
DELETE FROM Users WHERE UserGuid = 'e7bf9773-8231-44af-8d53-e624f0433943'

以上语句来源: http://zh-cn.w3support.net/index.php?db=so&id=1055848

MYSQL

在mysql中有函数生成guid:SELECT UUID();

一般我们用CHAR(36)或者BINARY(36)类型来存储uuid。

PHP 使用 UUID

PHP下生成GUID

http://www.cnblogs.com/ovliverlin/archive/2008/08/27/932444.html

PHP function to generate v4 UUID

http://stackoverflow.com/questions/2040240/php-function-to-generate-v4-uuid

UUID 和 GUID 的区别(转)的更多相关文章

  1. php中生成标准uuid(guid)的方法

    );// "}"        return $uuid;    }}echo guid();?>

  2. UUID、GUID、SID、SUSID

    1. UUID: (Universally Unique Identifier) 通用唯一标识符, 是一个标识符标准用于软件架构,由开放软件基金会(OSF)作为分布式计算环境(DCE)的一部分而制作的 ...

  3. UUID(即GUID)

    UUID(GUID)是Cocoa Touch提供的一种生成唯一标识的机制.类型为CFUUIDRef的对象可以代表UUID,UUID是基于当前时间.计数器和硬件标识(通常是以太网卡的MAC地址)等数据计 ...

  4. SID与GUID的区别

    1.在AD里面创建一个用户或者组都会为其分配一个SID,同时也会为这些对象分配一个GUID,GUID是一个128位的字符串,一个标识符,GUID不仅在整个域里面是唯一的,并且在全世界的范围内都是唯一的 ...

  5. Guid.NewGuid() 和 new Guid()的区别

    Guid.NewGuid().ToString() + "||" + (new Guid()).ToString() b8efacbb-7d43-4da5-9f48-9a75d8c ...

  6. UUID那些事

    UUID那些事 UUID 是一个全局唯一的通用识别码.它使用某种规则,而不是某种中心化的自增方式,来保证这个识别码的全局唯一性.UUID 有非常多的使用场景,比如在分布式系统中,需要生成全局唯一 ID ...

  7. 数据库分库分表(一)常见分布式主键ID生成策略

    主键生成策略 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,下面介绍一些常见的ID生成策略. Sequence ID UUID GUID COMB Snowflake 最开始的自增ID为了实 ...

  8. javascript guid(uuid)

    http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript function generateU ...

  9. mysql 生成UUID() 即 ORACLE 中的guid()函数

    MYSQL 生成UUID 即 guid 函数-- 带 - 的UUIDselect UUID() -- 去掉 - 的UUIDselect replace(uuid(),'-','') 一个表的数据插入另 ...

随机推荐

  1. Android动画系列 - PropertyAnim 详解

    前言:上一篇文章传统View动画与Property动画基础及比较简单对Android动画系统的基础做了介绍,本篇文章将对PropertyAnimation进行全面深入的探讨,本篇文章可以分为两大块,从 ...

  2. ArcGIS for Android地图控件的5大常见操作转

    http://blog.csdn.net/arcgis_mobile/article/details/7801467 GIS的开发中,什么时候都少不了地图操作.ArcGIS for Android中, ...

  3. pandas常见函数详细使用

    groupby函数 pandas提供了一个灵活高效的groupby功能,它使你能以一种自然的方式对数据集进行切片.切块.摘要等操作,根据一个或多个键(可以是函数.数组.Series或DataFrame ...

  4. Linux中的热键[Tab] [Ctrl]-c [Ctrl]-d

    Tab键:命令或者文件补全.可以避免很多的输入错误 1. 按一次,文件或命令补全 2. 按两次,会列举出以按键前的字母为首的所有命令或者文件 Ctrl+C:中断目前程序 Ctrl+D:键盘输入结束.可 ...

  5. 很多shell命令后面的单横杠和双横杠,原来这个意思

    原文: https://blog.csdn.net/deyili/article/details/5471023 ------------------------------------------- ...

  6. HDU 2648(搜索题,哈希表)

    #include<iostream> #include<map> #include<string> #include<cstring> #include ...

  7. react 自定义 百度地图(BMap)组件

    1.html 页面引入 相关js public/index.html <!DOCTYPE html> <html lang="en"> <head&g ...

  8. HDU 1418 抱歉 (欧拉公式)

    [题目链接]:pid=1418">click here~~ [题目大意]: 假设平面上有n个点,而且每一个点至少有2条曲线段和它相连,就是说,每条曲线都是封闭的.同一时候,我们规定: ...

  9. UVA11770 - Lighting Away

    题目链接 题意:一个有向图,每对一个结点操作.就能够触发连锁反应,使得该结点及它直接或间接指向的点均获得标记,问至少须要操作多少个结点使得全部结点获得标记 思路:有向图的强连通分量.用Tarjan缩点 ...

  10. linux新建文件和文件夹命令

    1.touch命令 touch命令用来修改文件的访问时间.修改时间.如果没有指定时间,则将文件时间属性改为当前时间. 当指定文件不存在,touch命令变为创建该文件. 语法: touch [-acm] ...