为何每次发帖都说我没有登录,其实我登录了。怎么回事。。

解决方案 »

  1.   

    我昏,怎么突然又能发了。。实在对不起,我的问题在这里。囧。。刚才发了N次,以至于csdn提示我,我的密码可能被盗了,都发不出去,每次发都要我登录,登录了也发不出去。囧,,言归正传,各位高手,各位大哥,小弟拜托了。下面的问题,困扰小弟很久了。。遇到了一个问题,很郁闷
    将excel表里面的东西导入到sql2000。
    数据库的结构
    用户表: user_id     user_name         dpt_id
    部门表:dpt_id        dpt_nameexcel的结构是这样的:
    部门      用户
    研发      张三
    研发      张三
    客服      李四
     大家看到了,excel的数据是冗余的,我要将其导入到sql2000的亮个表里,怎么搞呢?
    并且还要保证部门和用户相互对应希望各位高手给个答案
      

  2.   

    我滴吗呀这什么情况,大家能看到我发的求助内容吗小弟常年混迹于CSDN底层,可以说是CSDN最有权威,最有实力的CSDN最低领导人。根据我发帖的样子,各位大神应该可以猜到一二了。。
    无论如何,小弟是非常非常虔诚的来请教的,刚才从7点班开始发帖,一直没有成功,直到刚才才成功希望各位大神帮忙啊。。csdn是小弟最后的希望了,否则,小弟将前往富士康了.....阿门,上帝与你同在。。
      

  3.   

    csdn目前bug很多。现在博客又不能用了。靠~
      

  4.   

    把excel里面的数据整体复制、然后直接粘贴到sql2000  就OK了。。
      

  5.   


    大神,请问您可以说的具体一点吗??我的excel里面分别是 sheet1 sheet2  sheet3  怎么整体复制啊???
      

  6.   

    先把部门 distinct的导入
    然后 导入用户的时候 分析 对应部门在部门表的 id 导入...
      

  7.   

    先在你excel里添加一个id列,数据从1,2,3,4,5...n,并保存excel
    然后打开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
      

  8.   

    仔细看10楼,我能想到的也是这个方法。你可以多看看sql语句~
      

  9.   

    通过sql也可以读取execl
    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 排除相同的 ,
    然后执行你的操作。
      

  10.   

    我点击博客还只进到这一步了那!!http://blog.csdn.net/
    我还得在地址栏里加上自己的ID“flyfeifei66”拼成:http://blog.csdn.net/flyfeifei66
    然后回车才能进自己的博客。每次都这样?此苦像谁说?
      

  11.   

    --> 测试数据: [部门表]
    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 用户表
      

  12.   

    上面我是将excel放在d盘,楼主自己将路径改下