• 读取MS SQL Server数据表数据,并将它保存到excel工作表中
  1. Sub ReturnSQLrecord()
  2. 'sht 为excel工作表对象变量,指向某一工作表
  3. Dim i As Integer, sht As Worksheet
  4.  
  5. '定义数据链接对象 ,保存连接数据库信息
  6. '使用ADODB,须在菜单的Tools->References中添加引用“Microsoft ActiveX Data Objects library 2.x”
  7. Dim cn As New ADODB.Connection
  8.  
  9. '定义记录集对象,保存数据表
  10. Dim rs As New ADODB.Recordset
  11. Dim strCn As String, strSQL As String
  12.  
  13. '定义数据库链接字符串,Server=服务器名称或IP地址(本地可填写“.”);Database=数据库名称;Uid=用户登录名;Pwd=密码
  14. strCn = "Provider=sqloledb;Server=NIKEY-980114BB0;Database=pubs;Uid=sa;Pwd=sa;"
  15.  
  16. '定义SQL查询命令字符串
  17. strSQL = "select job_id, job_desc from dbo.jobs"
  18.  
  19. '与数据库建立连接,如果成功,返回连接对象cn
  20. cn.Open strCn
  21.  
  22. '执行strSQL所含的SQL命令,结果保存在rs记录集对象中
  23. rs.Open strSQL, cn
  24.  
  25. i = 1
  26. '把sht指向当前工作簿的sheet1工作表
  27. Set sht = ThisWorkbook.Worksheets("sheet1")
  28.  
  29. '当数据指针未移到记录集末尾时,循环下列操作
  30. Do While Not rs.EOF
  31.  
  32. '把当前记录的job_id字段的值保存到sheet1工作表的第i行第1列
  33. sht.Cells(i, 1) = rs("job_id")
  34. sht.Cells(i, 2) = rs("job_desc")
  35.  
  36. '把指针移向下一条记录
  37. rs.MoveNext
  38. i = i + 1
  39. Loop
  40.  
  41. '关闭记录集
  42. rs.Close
  43.  
  44. '关闭数据库链接,释放资源
  45. cn.Close
  46. End Sub
  • 读取excel工作表数据,并将之插入到数据库中(将sheet1工作表中的A2:D6的记录插入到数据库pubs的jobs数据表中)
  1. Sub ReturnSQLrecord()
  2. Dim i As Integer, sht As Worksheet
  3.  
  4. '定义数据链接对象 ,保存连接数据库信息
  5. '使用ADODB,须在菜单的Tools->References中添加引用“Microsoft ActiveX Data Objects library 2.x
  6. Dim cn As New ADODB.Connection
  7.  
  8. Dim strCn As String, strSQL As String
  9.  
  10. '定义数据库链接字符串,Server=服务器名称或IP地址(本地可填写“.”);Database=数据库名称;Uid=用户登录名;Pwd=密码
  11. strCn = "Provider=sqloledb;Server=.;Database=pubs;Uid=sa;Pwd=sa;"
  12.  
  13. '清空定义的变量
  14. strSQL = ""
  15.  
  16. '与数据库建立连接,如果成功,返回连接对象cn
  17. cn.Open strCn
  18.  
  19. Set sht = ThisWorkbook.Worksheets("sheet1")
  20. For i = 2 To 6
  21. '构造SQL命令串,对标识列job_id执行插入操作时,要设置表的IDENTITY_INSERT为打开,否则会插入失败
  22. strSQL = strSQL & "SET IDENTITY_INSERT dbo.jobs ON;insert into dbo.jobs(job_id,job_desc,min_lvl,max_lvl) values(" _
  23. & sht.Cells(i, 1) & "," & CStr(sht.Cells(i, 2)) & "," & sht.Cells(i, 3) & "," & sht.Cells(i, 4) & ") ;"
  24. Next
  25.  
  26. '执行该SQL命令串,如果SQL命令没有错误,将在数据库中添加5个记录;也可以用rs.open strSQL,cn 执行
  27. cn.Execute strSQL
  28.  
  29. '关闭数据库链接,释放资源
  30. cn.Close
  31. End Sub
  A B C D
1 job_id job_desc min_lvl max_lvl
2 30 'test30' 20 100
3 31 'test31' 20 100
4 32 'test32' 20 100
5 33 'test33' 20 100
6 34 'test34' 20 100
 
 

VBA SQLServer 基本操作的更多相关文章

  1. SQLServer基本操作

    SQL 全名是结构化查询语言(Structured Query Language),是关系数据库管理系统的标准语言 1.分离数据库:将当前数据库文件和数据库引擎的关系断开,没有任何关系了,这样就可以随 ...

  2. 报表研究之工具篇-VBA

    最近一直在研究VBA,写报表的工作.将所得的知识,经验总结一下,与大家分享. 工具篇,VBA 1.EXCEL一个最好用的功能就是录制宏,当一个函数拿不准要怎么写,用什么函数表示的时候,录制就帮了大忙了 ...

  3. oracle命令大全

    内容包括三大项:    1.oracle基本操作语句 2.SQLServer基本操作语句 3.各种数据库连接方法 ******************************************* ...

  4. dos命令行连接操作ORACLE数据库

    C:\Adminstrator> sqlplus "/as sysdba" 查看是否连接到数据库 SQL> select status from v$instance; ...

  5. java数据库基本操作(sqlserver 2000为例)

    一.环境搭建 1.下载对应数据库连接驱动包并引入. 2.如果在web中调用必须在tomcat中也放入对应的驱动包. 3.在jre的lib\ext中也加入对应的驱动包. 二.连接数据库 public s ...

  6. SQLServer数据库基本操作,导入Excel数据

    打开SQLServer客户端,连上服务端 先建立数据库,点击新建查询 基本操作如下 创建表 create table mytest ( id int primary key identity(1,1) ...

  7. Excel VBA Range对象基本操作应用示例

    [示例01] 赋值给某单元格[示例01-01] Sub test1()Worksheets("Sheet1").Range("A5").Value = 22Ms ...

  8. SQL-SERVER学习(一) 数据表的基本操作

    1.创建一个数据库,数据库的名字是UserInfo create database UserInfo; 2.创建一个数据表,数据表的名字是UserInfocreate table UserInfo( ...

  9. VBA学习思路

    打算花两三天学习VBA的基础,学习资料为<别怕,VBA其实很简单>,为了快速学习,先了解大致框架,后续再深入学习各种属性.方法和技巧. 1.VBA编程环境基本操作,手工操作,熟悉即可 2. ...

随机推荐

  1. JS学习笔记(四) 正则表达式(RegExp对象)

    参考资料: 1. http://www.w3school.com.cn/js/js_obj_regexp.asp ☂ 知识点: ☞ RegExp是正则表达式的缩写. ☞ RegExp是一种模式,用于在 ...

  2. Java的内存分配策略

    简单来说,对象内存分配主要是在堆中分配.但是分配的规则并不是固定的,取决于使用的收集器组合以及JVM内存相关参数的设定 以下介绍几条基本规则(使用的ParNew+Serial Old收集器组合): 一 ...

  3. Jquery 移除 html中绑定的onClick事件

    HTML绑定示例: <button class="edit" onClick="showTurnEdit(this)">编辑</button& ...

  4. mysql: 1045 access denied for user 'root'@'localhost' using password yes

    原因是:root的密码错误了. 解决思路:关闭mysql服务,重新启动mysql服务,启动mysql的时候,指定不需要校验密码.然后登陆mysql,修改密码,退出.再重新启动mysql服务. 1.关闭 ...

  5. Mysql 允许null 与 default值

    分为下面4种情况: 1.允许null, 指定default值. 2.允许null, 不指定default,这个时候可认为default值就是null 3.不允许null,指定default值,不能指定 ...

  6. linux gksu用法

    apt-get install gksu gksu是linux下图形化的su/sudo工具 sudo 用来执行命令行(CLI)程序 gksu 用来执行图形的(GUI)程序 GUI = Graphica ...

  7. nginx的location root 指令

    原文:http://blog.csdn.net/bjash/article/details/8596538 location /img/ { alias /var/www/image/; } #若按照 ...

  8. JavaScript中Trim(),TrimStart(),TrimEnd()的实现

    //去除字符串头尾空格或指定字符 String.prototype.Trim= function(c) { if(c==null||c=="") { var str= this.r ...

  9. 搭建一个简单的Struts2框架

    1  创建一个web项目. 2 导入必要的JAR文件. 放在WEB-INF下lib包里. 3 添加web.xml配置,添加启动配置. <?xml version="1.0" ...

  10. 获取iframe外边数据

    http://biancheng.dnbcw.info/javascript/178184.html