导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

求SQL表对表复制指定列的语句

春三十一郎 2006-01-20 11:29:37
表[A]为总表 SQLServer库,内有若干列。
表[B]为一个Excel中的表,有部分列与表[A]想同。

希望快速将表[B]中的大量数据快速 插入到表[A] 每条数据附带一个相同的变量 插入到[A]的一个字段。

谢谢,测试通过立即结帖。

-----------------------------------------------------
现在已经Conn1连了SQLServer和Conn2连了Excel。
...全文
204 点赞 收藏 10
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
春三十一郎 2006-01-21
WEB ASP 调用 DTS 麻烦
回复
春三十一郎 2006-01-21
测试不通过

SQL 查询分析器 返回错误:插入错误: 列名或所提供值的数目与表定义不匹配。
回复
zlp321002 2006-01-20
--用DTS,实现数据的导入,参考:

http://blog.csdn.net/zlp321002/archive/2005/11/19/533177.aspx
回复
funsuzhou 2006-01-20
insert into 表A select ...... from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;IMEX=1;DATABASE=Excel的路径',Sheet名$)

例如表A有字段A、B、C、D,B的默认值是0,D的默认值是NULL
表B有字段A、C
Excel的Sheet名为“Sheet1”,路径在服务器上的“D:\DB_BACKUP\TEST.XLS”

可以这样:
insert into 表A select A,0,C,NULL from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;IMEX=1;DATABASE=D:\DB_BACKUP\TEST.XLS',Sheet1$)
回复
-狙击手- 2006-01-20
insert into a(col......)
SELECT bb.col....
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'c:\MSOffice\Access\Samples\northwind.mdb';'admin';'mypwd', b)
AS bb
回复
春三十一郎 2006-01-20
附加:

[B]中的字段相对应的插入到[A]中的字段。
回复
春三十一郎 2006-01-20
to funsuzhou

insert into 表A select A,0,C,NULL from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;IMEX=1;DATABASE=D:\DB_BACKUP\TEST.XLS',Sheet1$)

需要考虑[A]的顺序不?
回复
lvchy 2006-01-20
我也建议用DTS导入,对大量的数据操作速度很快。
回复
春三十一郎 2006-01-20
开会去了... 不知几时回来,回来了再测试,希望有更全面的。
回复
rfq 2006-01-20
学习
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告