zoukankan      html  css  js  c++  java
  • sql server导入excel和多表关联更新 东师理想

    1.开启SQL SERVER的'Ad Hoc Distributed Queries'开关,需要用拥有服务器sysadmin角色权限的登录帐号

    exec sp_configure 'show advanced options',1;reconfigure;
    exec sp_configure 'Ad Hoc Distributed Queries',1;reconfigure;

    执行后,控制台输出

    2.创建临时表T_EXCELTOSQL_TEMP,将excel中数据导入

    --导入EXCEL  JET引擎:Microsoft.Jet.OLEDB.4.0(导入office97-2003) ACE引擎:Microsoft.ACE.OLEDB.12.0(导入office2007-2010)
    --Data Source是服务器存放excel的路径
    --“一年级”是excel中sheet名,$必填
     SELECT * INTO T_EXCELTOSQL_TEMP
     FROM OpenDataSource( 'Microsoft.ACE.OLEDB.12.0',
     'Data Source="d:\fs.xls";User ID=Admin;Password=;Extended properties=Excel 12.0')...[一年级$]

    导入后表结构为

    3.根据业务需要,为临时表添加字段

    ALTER TABLE T_EXCELTOSQL_TEMP   ADD NF VARCHAR(4) null ;    --入学年份
    ALTER TABLE T_EXCELTOSQL_TEMP   ADD BH VARCHAR(2) null ;    --班号
    ALTER TABLE T_EXCELTOSQL_TEMP   ADD BH_INT int null ;        --班号int类型
    ALTER TABLE T_EXCELTOSQL_TEMP   ADD bj_id CHAR(36) null ;    --班级ID

    4.为新字段赋值

    --修改录入相关数据
    UPDATE dbo.T_EXCELTOSQL_TEMP SET nf=SUBSTRING(班级名称,1,4),bh=SUBSTRING(班级名称,5,2),BH_INT=CAST(SUBSTRING(班级名称,5,2) AS INT);
    ----------------------------------------------------------
    --多表关联更新
    UPDATE t1 SET t1.bj_id=t2.bj_id FROM  dbo.T_EXCELTOSQL_TEMP t1 INNER JOIN dbo.T_XG_CLASS t2 ON t1.NF=t2.RXNF AND t1.BH_INT=t2.BH
    WHERE SCHOOL_ID=100;

    5.基本的导入和更新步骤已经完毕,其他根据个人业务操作,执行完成后,因为安全性问题,需要关闭'Ad Hoc Distributed Queries'开关

    exec sp_configure 'Ad Hoc Distributed Queries',0;
    reconfigure;exec sp_configure 'show advanced options',0;reconfigure;

     执行结果

  • 相关阅读:
    halcon 如何把一个region截取出来保存为图像
    Halcon学习(三)赋值与数组操作
    sort_region——对区域进行排序
    Halcon函数【转】
    Halcon算子之shape_trans,用于变换区域的形状
    Halcon学习之八:图像区域叠加与绘制
    Halcon学习之七:改变图像的现实方式和大小
    Halcon学习之六:获取Image图像中Region区域的特征参数
    Halcon学习之五:有关图像的定义域的函数
    Docker Swarm redis 集群搭建
  • 原文地址:https://www.cnblogs.com/cczhoufeng/p/2513485.html
Copyright © 2011-2022 走看看