❶ 怎样得到数据库中的guid类型
如果主键是Guid,数据库给主键列以newid()的默认值,EF也会将主键值返回并更新模型的对应属性的,前提是要在EF中Mapping类中要设置
this.Property(t => t.TipID).HasDatabaseGeneratedOptio(DatabaseGeneratedOption.Identity);
此时生成的sql语句和自增长的有所不同
exec sp_executesql N'declare @generated_keys table([TipID] uniqueidentifier)
insert [dbo].[Tips]([Description])
output inserted.[TipID] into @generated_keys
values (@0)
select t.[TipID]
from @generated_keys as g join [dbo].[Tips] as t on g.[TipID] = t.[TipID]
where @@ROWCOUNT > 0',N'@0 nvarchar(max) ',@0=N'testing'
注意:这里定义了一个表变量@generated_keys,插入的时候将id输出给@generated_keys表的字段,
这里values (@0)是针对insert [dbo].[Tips]([Description]) 而言的,先执行insert
再执行output inserted.[TipID] into @generated_keys 将插入的id输出到@generated_keys 中
EF真的是太强大了,可以模仿EF生成SQL语句,这极大地提升本人写SQL的水平,Entity Framework生成的SQL是很有水平的!
这样就可以返回刚新插入的主键值!
❷ sql 表里的字段GUIDE如何自动生成
select newid() 可生成GUID
也可在程序里,如C#
Guidid=new Guid();
string sql =" insert t value('"+id.ToString()+"')";
❸ sql如何将新产生的guid和一条其他表的数据插入当前表
sqlserver2005+以上案例:
--newid() 直接当及一列查询出来过滤到A表即可!
InsertintoB表(字段1....)
selectNEWID()[guid],*fromA表where过滤条件
如有问题可以追问,我当及时回答.
希望能帮到你!
❹ SQL数据库中表里有GUID列,我想用EXCEL导入某些数据表,可是EXCEL中如何才能产生GUID请高手指教。
不懂你什么需求
导入后,sql Update一下,不就能生成guid类型字段么,为什么非要在excel中生成guid类型。
Update table set guid=newid()
不是跟你讲了吗,Guid这一列先空着,你整个导进去以后,用sql语句吧为空的Guid按上述命令更新进去就好。
❺ SQL 表已经建立好了 如何在字段中插入GUID数据
sqlserver:insert into 表名 (字段名) values (newid())。
oracle:insert into 表名(字段名) values (sys_guid())。
mysql:insert into 表名(字段名) values(UUID())。
sql一般指结构化查询语,结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
GUID(全称:Globally Unique Identifier),是一种由算法生成的二进制长度为128位的数字标识符。GUID主要用于在拥有多个节点、多台计算机的网络或系统中。在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。
GUID 的总数达到了2^128(3.4×10^38)个,所以随机生成两个相同GUID的可能性非常小,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。
GUID一词有时也专指微软对UUID标准的实现。另外,还有磁盘分区表方案的含义,全局唯一标识分区表是一个实体硬盘的分区表的结构布局的标准。
❻ 如何在sql中自动生成guid-CSDN论坛
SQL函数newid()
newid()是个函数取的是唯一码(GUID)
SQL如下:select newid()
列上的索引。
GUID是根据网卡与统计时间计算出来的唯一标识,可用于离线数据合并
因为无论何时得到的GUID都是唯一的。
❼ SQL 中Guid 怎么优化
1、生成我觉得可以先预生成一定数量的GUID备用,然后使用时候,从这个表取。如果表的使用量低于50%,则自动填满。
2、GUID是由网卡地址和CPU时间戳生成的,很可能前面都是重复的部分,完全可以忽略重复的,比较不重复的做索引排序依据。
❽ sql 获取当前插入的主键 表主键是guid类型的
@@IDENTITY只能获取表中identity类型的值,guid的好像只能写方法或者触发器自己获得了
另外guid虽可唯一标示,但是并不顺序增长,所以拿来做主键可以,但是做聚集索引就没什么意义了,最后自己再加一列identity型的唯一列来标示
❾ 已经建立SQL 表,如何在字段中插入GUID数据
sqlserver:insert into 表名 (字段名) values (newid())。
oracle:insert into 表名(字段名) values (sys_guid())。
mysql:insert into 表名(字段名) values(UUID())。
sql一般指结构化查询语,结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
GUID(全称:Globally Unique Identifier),是一种由算法生成的二进制长度为128位的数字标识符。GUID主要用于在拥有多个节点、多台计算机的网络或系统中。在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。
GUID 的总数达到了2^128(3.4×10^38)个,所以随机生成两个相同GUID的可能性非常小,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。
GUID一词有时也专指微软对UUID标准的实现。另外,还有磁盘分区表方案的含义,全局唯一标识分区表是一个实体硬盘的分区表的结构布局的标准。
❿ 怎样用sql语句生成guid
SELECTNEWID();