C#主键类型选择

1、SQL Server中两种常用的主键数据类型:int(或者bigint)+标识列(又称自动增长字段)

uniqueidentifier(又称Guid、UUID)

2、Guid算法是一种可以产生唯一标识的高效算法,它使用网卡MAC、地址、纳秒级时间、芯片ID码等算出来的,这样保证每次生成的GUID永远不会重复。

3、SQL Server中生成Guid的函数:newid()

.NET中生成Guid的方法:Guid g1 = Guid.NewGuid();//Guid结构体,是值类型

3、insert into temp(id) values(newid());//插入Guid类型的主键

4、在VS工具中查看GUID的格式

工具->创建Guid->新建Guid,如图所示

时间: 2024-10-28 21:12:59

C#主键类型选择的相关文章

【转】NHibernate主键类型介绍

转自:http://blog.163.com/wzx_dd/blog/static/1942850722012828934553/ 最近整合了一下框架,用SSH搭建了一个框架,但是在整合好之后,启动tomcat的时候老是报这个错误,上网搜集了一下并向同事问了问,终于知道了错误原因: 数据库不支持自动递增主键(oracle就不支持)所以你的key generation需要从新设置 通过上网搜集,整理了一下关于主键自增列的知识,以供以后学习使用: 1) Assigned 主键由外部程序负责生成,无需

主键类型定义错了调试了半天

package com.itheima.demo1; import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;import javax.persistence.Table; @Entity@Table(name="u_user")public class User

mysql 表主键类型由int 改为bigint

需求:由于业务的需要,tmp_employees的emp_no主键字段类型为int已经不能满足业务的需求,此时需要将该表主键字段类型由int 更改为 bigint 使用工具:pt-online-schema-change ./pt-online-schema-change  --user=root --password=root456 --recursion-method="processlist" --alter="modify column emp_no bigint n

MySQL中主键的选择与磁盘性能

偶然看到了“Fotolog: Scaling the World\'s Largest Photo Blogging Community”,才发现很多数据库的优化其实道理都很简单,至高境界是当你面对问题时,是否真正做出了自己的思考,而不仅仅只是经验主义的惯性使然: 本文案例背景介绍:一个图片网站,每张图片都有很多评论.浏览时会执行:SELECT ... FROM ... WHERE photo_identifier = ... ORDER BY posted ... 在“Old Schema”的

ASP.NET Identity 修改表名和主键类型

public class UserLogin : IdentityUserLogin<Guid> { } public class UserRole : IdentityUserRole<Guid> { } public class UserClaim : IdentityUserClaim<Guid> { } public class Role : IdentityRole<Guid, UserRole> { } public class User : I

oracle处理已有数据的字段(主键)类型修改方法

来自本人oracle最新sql回忆性演练1一篇博文http://blog.csdn.net/luozhonghua2014/article/details/45729669 只所以重新发布一次,就是抽取经验,让大家可以找到解决方法 --------处理已有数据的字段类型修改(前4步操作会使表中的约束丢失) --1重命名字段 alter table example rename column id to sid; --2添加id字段 alter table example add id varch

数据库设计中主键字段类型的选择

很久都没有写过博客了,从最后一次发表的文章到现在已经是两个多月的时间了,一直都想写点什么,可一直没有时间(其实都是借口),随笔内容无疑就是工作学习中的总结,经验的分享,也是自己成长的一面镜子,好了,言规正传,这次谈谈在数据库设计中主键字段类型的选择. 做web 开发时,经常要与数据库交互,数据库主键的选择也犹为重要,怎么么选择数据库主键字段的类型,主要从以下几个方面考虑: 1. 首先要符合业务需求,这是设计中重要的出发点 2. 数据库的迁移问题,考虑在后期是否要经常迁移,数据库高度唯一性 3.程

asp.net MVC Model 类的主键 int类型、string类型、GUID类型。

在使用asp.net mvc进行定义 模型类的时候,一般情况下,我们都会定义一个属性为 int iD{get;set;} 或为int ClassNameID {get;set;},在这种情况下 1.Int类型主键 EF的默认约定就是第一个属性如果是类名+id或是id(这两情况下id字母大小写没有关系),并且是int类型的,那么直接设置第一个属性为主键,同时设置自增长.不需要指定[Key]关键字(在 System.ComponentModel.DataAnnotations.Schema命名空间下

Chapter 1. 数据库概述、主键、外键

数据库 database: 存储数据的仓库,用表来分类数据 特点:海量存储:查找速度快:并发性问题的控制:安全性:数据完整性(保存在数据库中的数据是正确的真实的) 数据库软件:DBSM   database management system 常见数据库软件:MySQL  MSSQL server  Oracle  Access SQL:Structured Query Language 结构化查询语言   特点:语言简洁.易学易用. SQL Server:是一种基于网络的大型数据库软件.主要用