Excel数据导入到access,Sql Server中示例代码-钱玉炜
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> 综合其它


Excel数据导入到access,Sql Server中示例代码

发表时间:2008/8/6 8:27:49 评论(0) 浏览(6791)  评论 | 加入收藏 | 复制
   
摘 要:Excel数据导入到Access,Sql Server中示例代码
正 文:

将Excel中的数据导入到Access中,前提是在Access中的表已经建好。

dim conn
dim conn2
set conn=CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=;Data Source=c:\book1.mdb"

set conn2=CreateObject("ADODB.Connection")
conn2.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=;Extended properties=Excel 5.0;Data Source=c:\book1.xls"


sql = "Select * FROM [Sheet1$]"
set rs = conn2.execute(sql)
while not rs.eof
 sql = "insert into xxx([a],[b],[c],[d]) values('"& fixsql(rs(0)) &"','"& fixsql(rs(1)) &"','"& fixsql(rs(2)) &"','"& fixsql(rs(3)) &"')"
 conn.execute(sql)
 rs.movenext
wend

conn.close
set conn = nothing
conn2.close
set conn2 = nothing

function fixsql(str)
 dim newstr
 newstr = str
 if isnull(newstr) then
  newstr = ""
 else
  newstr = replace(newstr,"'","''")
 end if
 fixsql = newstr
end function

导入到Sql Server数据库中时,如果Excel文件和数据库不在同一台服务器上时,请参考上面的代码。在同一机器上可以参考下面代码(不需要先把表建表,程序会自己动建表,用Excel中的第一行数据做为表的字段名):

dim conn
set conn=CreateObject("ADODB.Connection")
conn.Open ("driver={SQL Server};server=localhost;uid=sa;pwd=sa;database=hwtemp;")
sql = "Select * into newtable FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source=""c:\book1.xls"";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$] "
conn.execute(sql)

conn.close
set conn = nothing

选择自 sxycgxj 的 Blog


Access软件网交流QQ群(群号:198465573)
 
 相关文章
真正的自动连接示例代码  【冰雪  2007/10/18】
命令按钮与列表框组合的菜单栏示例  【沈军  2013/7/25】
【Access示例】列表框数据的上移下移  【缪炜  2013/7/26】
【Access示例】为组合框设置默认值  【缪炜  2013/7/28】
【Access示例】窗体控件自动调整范例  【漏蛧尐魚℡  2013/8/1】
常见问答
技术分类
相关资源
文章搜索
关于作者

钱玉炜

文章分类

文章存档

友情链接