首页 > 代码库 > Sqlserver在现有数据库中插入数据
Sqlserver在现有数据库中插入数据
需求:1.客户提供的excel表和数据库中的表结构总是有一些差距,id的生成,各种字段的关联等等
2.
如何在Excel中生成Guid。
1.在Excel的宏中执行以下代码:
Private Declare PtrSafe Function CoCreateGuid Lib "ole32" (id As Any) As Long Private Function CreateGUID() As String Dim id(0 To 15) As Byte Dim Cnt As Long, GUID As String If CoCreateGuid(id(0)) = 0 Then For Cnt = 0 To 15 CreateGUID = CreateGUID + IIf(id(Cnt) < 16, "0", "") + Hex$(id(Cnt)) Next Cnt CreateGUID = Left$(CreateGUID, 8) + Mid$(CreateGUID, 9, 4) + Mid$(CreateGUID, 13, 4) + Mid$(CreateGUID, 17, 4) + Right$(CreateGUID, 12) Else MsgBox "Error while creating GUID!" End If End Function
2.写一些Excel函数去找对应的关系。
=IF(ISNA(VLOOKUP($O3,域字典!A:B,2,FALSE)),"NULL",VLOOKUP($O3,域字典!A:B,2,FALSE))
3.把excel中的数据拷贝到数据库中。
思路:1.根据一些特定列判断数据库中的列是否有重复的
select ‘‘‘‘+min(id)+‘‘‘,‘ from 表名 where 列名 in ( select 列名 from ( select 列名 from 表名 where 列名 in ( select 列名 from 表名 group by 列名 having count(*)>1 ) )as b group by 列名,列名 having count(*)>1 ) group by 列名,列名
2.去除重复的
delete from 表名 where id in ()
3.修改数据执行update语句
4.复制表结构
select * into [dbo].要复制的表 from [dbo].原有的表
5.删除数据结构
truncate table 表名
Sqlserver在现有数据库中插入数据
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。