VBA SQLServer 基本操作
- 读取MS SQL Server数据表数据,并将它保存到excel工作表中


- Sub ReturnSQLrecord()
- 'sht 为excel工作表对象变量,指向某一工作表
- Dim i As Integer, sht As Worksheet
- '定义数据链接对象 ,保存连接数据库信息
- '使用ADODB,须在菜单的Tools->References中添加引用“Microsoft ActiveX Data Objects library 2.x”
- Dim cn As New ADODB.Connection
- '定义记录集对象,保存数据表
- Dim rs As New ADODB.Recordset
- Dim strCn As String, strSQL As String
- '定义数据库链接字符串,Server=服务器名称或IP地址(本地可填写“.”);Database=数据库名称;Uid=用户登录名;Pwd=密码
- strCn = "Provider=sqloledb;Server=NIKEY-980114BB0;Database=pubs;Uid=sa;Pwd=sa;"
- '定义SQL查询命令字符串
- strSQL = "select job_id, job_desc from dbo.jobs"
- '与数据库建立连接,如果成功,返回连接对象cn
- cn.Open strCn
- '执行strSQL所含的SQL命令,结果保存在rs记录集对象中
- rs.Open strSQL, cn
- i = 1
- '把sht指向当前工作簿的sheet1工作表
- Set sht = ThisWorkbook.Worksheets("sheet1")
- '当数据指针未移到记录集末尾时,循环下列操作
- Do While Not rs.EOF
- '把当前记录的job_id字段的值保存到sheet1工作表的第i行第1列
- sht.Cells(i, 1) = rs("job_id")
- sht.Cells(i, 2) = rs("job_desc")
- '把指针移向下一条记录
- rs.MoveNext
- i = i + 1
- Loop
- '关闭记录集
- rs.Close
- '关闭数据库链接,释放资源
- cn.Close
- End Sub


- 读取excel工作表数据,并将之插入到数据库中(将sheet1工作表中的A2:D6的记录插入到数据库pubs的jobs数据表中)


- Sub ReturnSQLrecord()
- Dim i As Integer, sht As Worksheet
- '定义数据链接对象 ,保存连接数据库信息
- '使用ADODB,须在菜单的Tools->References中添加引用“Microsoft ActiveX Data Objects library 2.x”
- Dim cn As New ADODB.Connection
- Dim strCn As String, strSQL As String
- '定义数据库链接字符串,Server=服务器名称或IP地址(本地可填写“.”);Database=数据库名称;Uid=用户登录名;Pwd=密码
- strCn = "Provider=sqloledb;Server=.;Database=pubs;Uid=sa;Pwd=sa;"
- '清空定义的变量
- strSQL = ""
- '与数据库建立连接,如果成功,返回连接对象cn
- cn.Open strCn
- Set sht = ThisWorkbook.Worksheets("sheet1")
- For i = 2 To 6
- '构造SQL命令串,对标识列job_id执行插入操作时,要设置表的IDENTITY_INSERT为打开,否则会插入失败
- strSQL = strSQL & "SET IDENTITY_INSERT dbo.jobs ON;insert into dbo.jobs(job_id,job_desc,min_lvl,max_lvl) values(" _
- & sht.Cells(i, 1) & "," & CStr(sht.Cells(i, 2)) & "," & sht.Cells(i, 3) & "," & sht.Cells(i, 4) & ") ;"
- Next
- '执行该SQL命令串,如果SQL命令没有错误,将在数据库中添加5个记录;也可以用rs.open strSQL,cn 执行
- cn.Execute strSQL
- '关闭数据库链接,释放资源
- cn.Close
- 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 基本操作的更多相关文章
- SQLServer基本操作
SQL 全名是结构化查询语言(Structured Query Language),是关系数据库管理系统的标准语言 1.分离数据库:将当前数据库文件和数据库引擎的关系断开,没有任何关系了,这样就可以随 ...
- 报表研究之工具篇-VBA
最近一直在研究VBA,写报表的工作.将所得的知识,经验总结一下,与大家分享. 工具篇,VBA 1.EXCEL一个最好用的功能就是录制宏,当一个函数拿不准要怎么写,用什么函数表示的时候,录制就帮了大忙了 ...
- oracle命令大全
内容包括三大项: 1.oracle基本操作语句 2.SQLServer基本操作语句 3.各种数据库连接方法 ******************************************* ...
- dos命令行连接操作ORACLE数据库
C:\Adminstrator> sqlplus "/as sysdba" 查看是否连接到数据库 SQL> select status from v$instance; ...
- java数据库基本操作(sqlserver 2000为例)
一.环境搭建 1.下载对应数据库连接驱动包并引入. 2.如果在web中调用必须在tomcat中也放入对应的驱动包. 3.在jre的lib\ext中也加入对应的驱动包. 二.连接数据库 public s ...
- SQLServer数据库基本操作,导入Excel数据
打开SQLServer客户端,连上服务端 先建立数据库,点击新建查询 基本操作如下 创建表 create table mytest ( id int primary key identity(1,1) ...
- Excel VBA Range对象基本操作应用示例
[示例01] 赋值给某单元格[示例01-01] Sub test1()Worksheets("Sheet1").Range("A5").Value = 22Ms ...
- SQL-SERVER学习(一) 数据表的基本操作
1.创建一个数据库,数据库的名字是UserInfo create database UserInfo; 2.创建一个数据表,数据表的名字是UserInfocreate table UserInfo( ...
- VBA学习思路
打算花两三天学习VBA的基础,学习资料为<别怕,VBA其实很简单>,为了快速学习,先了解大致框架,后续再深入学习各种属性.方法和技巧. 1.VBA编程环境基本操作,手工操作,熟悉即可 2. ...
随机推荐
- JS学习笔记(四) 正则表达式(RegExp对象)
参考资料: 1. http://www.w3school.com.cn/js/js_obj_regexp.asp ☂ 知识点: ☞ RegExp是正则表达式的缩写. ☞ RegExp是一种模式,用于在 ...
- Java的内存分配策略
简单来说,对象内存分配主要是在堆中分配.但是分配的规则并不是固定的,取决于使用的收集器组合以及JVM内存相关参数的设定 以下介绍几条基本规则(使用的ParNew+Serial Old收集器组合): 一 ...
- Jquery 移除 html中绑定的onClick事件
HTML绑定示例: <button class="edit" onClick="showTurnEdit(this)">编辑</button& ...
- mysql: 1045 access denied for user 'root'@'localhost' using password yes
原因是:root的密码错误了. 解决思路:关闭mysql服务,重新启动mysql服务,启动mysql的时候,指定不需要校验密码.然后登陆mysql,修改密码,退出.再重新启动mysql服务. 1.关闭 ...
- Mysql 允许null 与 default值
分为下面4种情况: 1.允许null, 指定default值. 2.允许null, 不指定default,这个时候可认为default值就是null 3.不允许null,指定default值,不能指定 ...
- linux gksu用法
apt-get install gksu gksu是linux下图形化的su/sudo工具 sudo 用来执行命令行(CLI)程序 gksu 用来执行图形的(GUI)程序 GUI = Graphica ...
- nginx的location root 指令
原文:http://blog.csdn.net/bjash/article/details/8596538 location /img/ { alias /var/www/image/; } #若按照 ...
- JavaScript中Trim(),TrimStart(),TrimEnd()的实现
//去除字符串头尾空格或指定字符 String.prototype.Trim= function(c) { if(c==null||c=="") { var str= this.r ...
- 搭建一个简单的Struts2框架
1 创建一个web项目. 2 导入必要的JAR文件. 放在WEB-INF下lib包里. 3 添加web.xml配置,添加启动配置. <?xml version="1.0" ...
- 获取iframe外边数据
http://biancheng.dnbcw.info/javascript/178184.html