为何每次发帖都说我没有登录,其实我登录了。怎么回事。。
解决方案 »
- 如何从mssql随机取出一条记录,看似很简单的问题
- 求一条SQL题????^^^^^^^^^^^^^^^^^^^
- http://bernice.go.zccn.net 我的网站去捧捧场。^o^ ^o^
- 请教关于CASE WHEN 的一个写法
- 用ACCESS项目数据库连接SQL SERVER数据库,想修改数据库中一个表的内容,怎么修改?
- 如何查询出第N条记录,N为任一常量??
- 两个服务器数据数据复制怎么实现?
- 一个检索的问题,急!!!
- 求教!!!!!!!!!!!!!!
- ----------求一SQL语句---------------
- MS SQL 在学习版创建域约束
- UPDATE语句可以分批更新数据吗?
将excel表里面的东西导入到sql2000。
数据库的结构
用户表: user_id user_name dpt_id
部门表:dpt_id dpt_nameexcel的结构是这样的:
部门 用户
研发 张三
研发 张三
客服 李四
大家看到了,excel的数据是冗余的,我要将其导入到sql2000的亮个表里,怎么搞呢?
并且还要保证部门和用户相互对应希望各位高手给个答案
无论如何,小弟是非常非常虔诚的来请教的,刚才从7点班开始发帖,一直没有成功,直到刚才才成功希望各位大神帮忙啊。。csdn是小弟最后的希望了,否则,小弟将前往富士康了.....阿门,上帝与你同在。。
大神,请问您可以说的具体一点吗??我的excel里面分别是 sheet1 sheet2 sheet3 怎么整体复制啊???
然后 导入用户的时候 分析 对应部门在部门表的 id 导入...
然后打开sqlserver2000,选择导入数据,从excel导入到sqlserver,你可以导到一个新建的表里,假设叫tblExcel然后在通过下面sql语句删除tblExcel里的重复数据(即你说的冗余数据)delete from
tblExcel A
where
exists(select 1 from tblExcel Where 部门=A.部门 AND 用户=A.用户 and ID>A.ID)然后你再把tblExcel拆分成两个表--部门表
insert into 部门表 select ID AS dpt_id,部门 AS dpt_name from tblExcel
delete from 部门表 A where exists(select 1 from 部门表 where dpt_name=a.dpt_name and dpt_id>a.dpt_id)--用户表
insert into 用户表 select ID AS user_id,用户名 AS User_name, 部门表.dpt_id from tblexcel join 部门表 on tblexcel.部门=部门表.dpt_name
SELECT * into #tmp1
FROM OpenDataSource('MICROSOFT.JET.OLEDB.4.0','User ID=Admin;Password=;Data Source=你的execl路径;Extended Properties=''Excel 8.0;HDR=Yes;IMEX=1''')...sheet1$类似这样插入到临时表#tmp1,把你这个工作区间的都读取出来,这一个表中使用DISTINCT 排除相同的 ,
然后执行你的操作。
我还得在地址栏里加上自己的ID“flyfeifei66”拼成:http://blog.csdn.net/flyfeifei66
然后回车才能进自己的博客。每次都这样?此苦像谁说?
if object_id('[部门表]') is not null drop table [部门表]
create table [部门表] (dpt_id int identity(1,1),dpt_name varchar(50))--> 测试数据: [用户表]
if object_id('[用户表]') is not null drop table [用户表]
create table [用户表] (user_id int identity(1,1),user_name varchar(50),dpt_id int)--将excel表格中数据去重并导入临时表
select distinct * into # from opendatasource
('Microsoft.Jet.OLEDB.4.0','Data Source=d:\1.xls;User ID=Admin;Password=;Extended properties=''Excel 8.0;HDR=yes;IMEX=1''')...[Sheet1$] --将临时表中数据处理后插入两表
declare @部门 varchar(50),@用户 varchar(50)
declare cur cursor for select * from #
open cur
fetch next from cur into @部门,@用户
while(@@fetch_status=0)
begin
--判断该部门在部门表中是否存在
if not exists(select 1 from 部门表 where dpt_name=@部门)
begin
insert into 部门表(dpt_name) values(@部门)
end
--插入用户
insert into 用户表(user_name,dpt_id) select @用户,dpt_id from 部门表 where dpt_name=@部门
fetch next from cur into @部门,@用户
end
close cur
deallocate cur
go--测试结果:
select * from 部门表select * from 用户表