网站首页
┆
博客首页
┆欢迎光临 ERP顾问最热爱的网络——金蝶社区
登录
┆
注册
┆
帮助
好望角的天堂
感恩、知足、珍惜
主页
日志
相册
论坛
MP3
最新日志
5.12大地震航拍(转)
K3项目编码原则
西方国家这次为什么会如此的团结?(转)
硬盘绝密资料(转)
MSDE和SQL问题集
日志搜索
Go
最近回复
re: 关于MRP计算基本原理浅析与不足之处建议
b. ...
--perfect
re: K3操作业务流程图(附件)
非常感谢。...
--进步人士
re: SQL Server SQL语句导入导出大全
学习xuexie ...
--萧萧飞雪
re: 硬盘绝密资料(转)
收藏了...
--hyjt
re: 开始中的运行命令归纳
谢谢!楼主。...
--hyjt
日志
SQL Server2000 数据导入Excel[转]
/**/
/*
+--------------------------------------
| 存储过程:SP_BulkInsertFromExcel
| 功能说明:根据Excel文件导入数据库中的表
| 维护记录:
| 调用方式:EXEC SP_BulkInsertFromExcel 'C:鞍山市地方税务局登记信息表.xls','aaaa','组织机构代码,注册号,企业名称,法定代表人,纳税人标识,注册地址,纳税人主管税务机关,主体税种,登记状态','地税登记信息'
| 联系方式:Spark.Zou@hotmail.com
| 创建日期:2007-05-07 22:26:09.873
| 注意事项:
| 版权信息: 邹黎鹏
--------------------------------------+
*/
CREATE
PROC
SP_BulkInsertFromExcel
@fname
NVARCHAR
(
260
),
@sheename
Nvarchar
(
256
),
@columnname
varchar
(
2000
),
@TABLENAME
VARCHAR
(
100
)
as
set
nocount
on
declare
@srv_name
sysname,
@sql
nvarchar
(
4000
),
@COLUMN
VARCHAR
(
2000
),
@IDENTITYNAME
VARCHAR
(
100
),
@SQLWhere
varchar
(
2000
)
SELECT
@COLUMN
=
''
,
@IDENTITYNAME
=
''
,
@SQLWhere
=
''
,
@sql
=
''
SELECT
@COLUMN
=
@COLUMN
+
'
,
'
+
NAME
FROM
SYSCOLUMNS
WHERE
ID
=
OBJECT_ID
(
@TABLENAME
)
AND
NAME
NOT
IN
(
SELECT
COLUMN_NAME
FROM
INFORMATION_SCHEMA.columns
WHERE
TABLE_NAME
=
@TABLENAME
AND
COLUMNPROPERTY
(
OBJECT_ID
(
@TABLENAME
),COLUMN_NAME,
'
IsIdentity
'
)
=
1
)
ORDER
BY
COLORDER
SET
@COLUMN
=
STUFF
(
@COLUMN
,
1
,
1
,
''
)
SELECT
@SQLWhere
=
@SQLWhere
+
'
and
'
+
A.NAME
+
'
<>
''''
AND
'
FROM
SYSCOLUMNS A
LEFT
JOIN
SYSCOMMENTS E
ON
A.CDEFAULT
=
E.ID
WHERE
A.ID
=
OBJECT_ID
(
@TABLENAME
)
AND
A.ISNULLABLE
!=
1
AND
ISNULL
(E.
TEXT
,
''
)
=
''
SET
@SQLWhere
=
stuff
(
@SQLWhere
,
1
,
1
,
''
)
SET
@SQLWhere
=
LEFT
(
@SQLWhere
,
LEN
(
@SQLWhere
)
-
3
)
if
@SQLWhere
<>
''
begin
SET
@sql
=
'
INSERT INTO
'
+
@TABLENAME
+
'
(
'
+
@columnname
+
'
)
SELECT
'
+
@columnname
+
'
from OPENROWSET(
''
MICROSOFT.JET.OLEDB.4.0
''
,
''
Excel 8.0;HDR=YES;IMEX=1;DATABASE=
'
+
@fname
+
'''
,[
'
+
@sheename
+
'
$])
where 1=1
'
+
@SQLWhere
end
else
begin
SET
@sql
=
'
INSERT INTO
'
+
@TABLENAME
+
'
(
'
+
@columnname
+
'
)
SELECT
'
+
@columnname
+
'
from OPENROWSET(
''
MICROSOFT.JET.OLEDB.4.0
''
,
''
Excel 8.0;HDR=YES;IMEX=1;DATABASE=
'
+
@fname
+
'''
,[
'
+
@sheename
+
'
$])
'
end
Exec
(
@sql
)
GO
来源:http://blog.csdn.net/zlp321002/archive/2007/05/27/1627571.aspx
已经公开 2007年9月2日 23:53 作者:
好望角
所属归类:
IT知识
评论
还没有人发表评论
请登录后再发表评论以赚取更多积分
About 好望角
用真诚来表达爱心!