搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
羊村懒王
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
SpringAI调用OpenAI Demo
2
Flink安装部署_flink部署
3
idea结合git回到某个提交点_idea回滚到某个提交
4
Git命令入门教程_gid add 全部
5
计算机选题指导 实战100例 论文+代码_计算机论文代码
6
07微服务的事务管理机制_微服务 事务管理
7
数学建模之回归分析算法(含matlab源代码)_matlab多元线性回归代码
8
面临春招自己该怎么准备?简历怎么写?_大学春招大三怎么写简历
9
前端 三种解决跨域问题 jsonp 、CORS、代理服务器 解决跨域全家桶_前端jsonp解决跨域
10
【Tello无人机】Tello飞行控制_tello控制
当前位置:
article
> 正文
OLEdb连接简介_oledb连接串介绍
作者:羊村懒王 | 2024-06-10 12:23:50
赞
踩
oledb连接串介绍
有许多种办法可以连上一个数据库. 你可以用System DSN, DSN-less连接或是本地的OLEDB provider. OLEDB? 这是什么什么玩艺儿? 也许你们中的许多人以前没有听说过. 要回答这个问题,我们先得回顾一下数据库连接的历史.
早期的数据库连接是非常困难的. 每个数据库的格式都不一样,开发者得对他们所开发的每种数据库的底层API有深刻的了解. 因此,能处理各种各样数据库的通用的API就应运而生了. 也就是现在的ODBC(Open Database Connectivity), ODBC是人们在创建通用API的早期产物. 有许多种数据库遵从了这种标准,被称为ODBC兼容的数据库.
ODBC兼容的数据库包括Access, MS-SQL Server, Oracle, Informix等.
但ODBC并不是完美无缺的,它仍然含有大量的低级的调用,开发ODBC应用程序仍较困难. 开发者不得不将大量的精力花在底层的数据库通信中,而不能专注于他们所要处理的数据. 后来微软提出了一个解决方案: DAO(Data Access Objects). DAO的代码看起来象这样:
objItem.AddNew
objItem.Name = "Chair"
objItem.Price = 10
objItem.Update
你也许看过DAO的代码. 后来DAO演变为RDO(Remote Data Objects, 为分布式数据库体系设计), 再后来是ADO. 尽管它们都有各自的不足之处. 根据微软的说法,"ODBC提供了本地SQL数据的存取,DAO提供了高级的数据对象". DAO和RDO都需要数据以SQL(Structured Query Language)的格式存储. 针对这些缺陷,微软提出了OLEDB,一个基于COM的数据存储对象,能提供对所有类型的数据的操作,甚至能在离线的情况下存取数据(比方说,你使用的是你的便携机,你可以毫不费力地看到最后一次数据同步时的数据映像).
OLEDB位于ODBC层与应用程序之间. 在你的ASP页面里,ADO是位于OLEDB之上的"应用程序". 你的ADO调用先被送到OLEDB,然后再交由ODBC处理. 你可以直接连接到OLEDB层,如果你这么做了,你将看到服务器端游标(recordset的缺省的游标,也是最常用的游标)性能的提升. 那我们该如何直接连接到OLEDB呢?
要想直接连到OLEDB层,你必须改变你的connection对象连接字符串. 先用老办法创建一个connectiong对象:
Dim objConn
Set objConn = Server.CreateObject("ADODB.Connection")
接下去,我们不用常规的类似DSN=pubs or DRIVER={MS SQL-
Server};UID=sa;PWD=;DATABASE=pubs;SERVER=myMachine的连接字符串,而采用下面的连接字符串:
objConn.ConnectionString = "Provider=ProviderName; Data
Source=DatabaseSource; Initial Catalog=DatabaseName; User ID=UserID;
Password=Password"
对于SQL:
ProviderName = SQLOLEDB
Data Source = Server Name
Initial Catalog = Database Name
对于Access:
ProviderName = Microsoft.Jet.OLEDB.3.51
Data Source = Full path to .MDB file
下面让我们来看两个例子,一个是针对Access的,还有一个是针对SQL的. 如果你的连接SQL的DSN-less连接串是这样的:
DRIVER={MS SQL-Server};UID=sa;PWD=;DATABASE=pubs;SERVER=myMachine
那么直接连接到OLEDB的连接字符串应该是这样的:
Provider=SQLOLEDB; Data Source=myMachine; Initial Catalog=pubs; User
ID=sa; Password=
让我们来看看Access,如果你的Access的连接字符串是:
DRIVER={Microsoft Access Driver (*.mdb)};
DBQ=c:/inetpub/wwwroot/users.mdb
那么直接连接到OLEDB的连接字符串应该是这样的:
Provider=Microsoft.Jet.OLEDB.3.51; Data
Source=c:/inetpub/wwwroot/users.mdb
就是这么简单,挺棒的吧?
这很重要吗?
现在你也许对为什么要学习这种新的数据库连接方法感到有些儿迷惑,为什么不走标准的DSN-less/System DSN路子呢? 让我来告诉你为什么. 据Wrox出的ADO 2.0
Programmer's Reference一书中的测试,用OLEDB连接而不是DSN或DSN-less的连接会得到的性能提升如下:
性能比较
SQL Access
OLEDB DSN OLEDB DSN
Connection Times: 18 82 Connection Times: 62 99
Iterating through 1,000 Records Times: 2900 5400 Iterating through
1,000 Records Times: 100 950
我希望这篇文章能对你有点儿帮助,我相信你会对你的连接SQL及Access数据库的方法做一些小小的改进的.
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/羊村懒王/article/detail/698751
推荐阅读
article
分层
架构
完整
刨析
,
一个
例子带你深入了解...
分层
架构
完整
刨析
,
一个
例子带你深入了解_
分层
架构
分层
架构
1.分...
赞
踩
article
Verilog
HDL
的
走马灯
以及计时器实现_(
分频
)
走马灯
电路
的
输入
时钟信号如何
设计
?...
Verilog
HDL
的
走马灯
以及计时器实现_(
分频
)
走马灯
电路
的
输入
时钟信号如何
设计
?(
分频
)
走马灯
电路
的
输入
时钟信号...
赞
踩
article
PowerShell
的安全性_
powershell
executionpolicy
...
为了保护系统和数据的安全,管理员可以通过设置 Execution Policy、启用 Constrained Langu...
赞
踩
article
Python
读入Excel表时如何判空
NaN
_
python
excle
获取的
字符串
空值 if 判...
if data == '
NaN
':读入时并不是普通的'
NaN
'3个字符,而是带有空格的
字符串
,这个不显眼坑值得注意。_...
赞
踩
article
Lua中
判断
table
是否
为空
_
lua
判断
table
为空
...
local
table
_a = {}
判断
一:(错误方法) if
table
_a == {} then --你会...
赞
踩
article
Git
常用
命令
总结_
git
登录用户
命令
...
Git
是一个开源的分布式版本控制系统,最初由 Linus Torvalds 为管理 Linux 内核而开发的开源软件,...
赞
踩
article
python
编程
游戏
代码
大全,
python
最简单
游戏
代码
_
python
编写
小
游戏
代码
...
大家好,小编为大家解答20行
python
代码
的入门级
小
游戏
的问题。很多人还不知道
python
游戏
编程入门
游戏
代码
,现在让...
赞
踩
article
初学
python
100
例
-案
例
35
数字
反转
少儿
编程
python
编程
实
例
讲解_
python
少儿
编程
...
python
数字
反转
初学
python
编程
100
例
小明最近在参加一个
数字
记忆游戏,要求他把看到的屏幕上的一串
数字
记住,然后...
赞
踩
article
MongoDB
是
一个
开源的_
mongodb
开源
客户端
...
在上面的示例中,我们首先引入
MongoDB
的
客户端
模块,并使用MongoClient类创建
一个
客户端
实例。一旦连接成功,...
赞
踩
article
深度
学习
知识梳理(干货满满详解
DNN
/
CNN
/
RNN
)之
深度
学习
网络
模型(三)_dnn
深度
神经
网络
...
(三)
深度
学习
网络
模型1
深度
神经
网络
(
DNN
)、or 全连接
神经
网络
(FCN)1.1 结构1.2 参数更新常见损失函数...
赞
踩
article
什么是
XSS
攻击
?...
这几天整理的一下过往的文章和笔记,备份到了 Github 上,地址???? blog。如果我的内容帮助到了您,欢迎点个 ...
赞
踩
article
C++
课本习
题
(
程序设计
题
)_
c++
程序设计
题
库...
第一章1.编写一个程序,将从键盘输入n个字符串保存在数组A中。在输入字符串之前,先输入n个值。要求,数组A动态申请空间,...
赞
踩
article
UML
交互
图
——
协作
图
_在进入该
协作
场景后即存在
的
对象
...
1、
协作
图
概念
协作
图
是动态
图
的
另一种表现形式,强调参加
交互
的
各
对象
结构
的
信息。强调参加
交互
的
各
对象
的
组织。2、
协作
图
的
元...
赞
踩
article
C#
ExcelHelper
...
C#
ExcelHelper
_c# excelhelperc# excelhelper ...
赞
踩
article
对于
阿克曼
底盘
的
teb
local
planner
的
参数
如何进行优化_
teb
适配
阿克曼
底盘
...
的
参数
优化需要考虑到
阿克曼
转向机构的限制,例如最小转弯半径和前轮转向角度限制。以下是一些针对
阿克曼
底盘
机器人的。对于阿克...
赞
踩
article
python
023
基于
python
的
旅游景点
推荐
系统
...
本基于Python的
旅游景点
推荐
系统
正是采用计算机技术和网络设计的新型
系统
,可以有效的把旅游信息与网络相结合,为用户提供...
赞
踩
article
容器
化
应用
生命周期
管理
_
阿里
云
容器
化
应用
的全
生命周期
管理
...
阿里
云
容器
服务提供了公共云、专有云以及专有云敏捷版三种部署形态,全方位地满足企业客户利用CaaS(Container a...
赞
踩
article
python
判断
excel
单元格
为空_
Excel
中
真假
重复
的一个简单处理...
Excel
是我们常见的办公软件Office的三驾马车之一,另外两架自然是Word与PowerPoint了。日常办公
中
,基...
赞
踩
article
利用
Java
实现
贪吃蛇
项目(附带源码和
图片素材
)_使用
java
进行
贪吃蛇
游戏
的
方法...
本篇文章通过
Java
实现了
贪吃蛇
小
游戏
项目
的
实现!_使用
java
进行
贪吃蛇
游戏
的
方法使用
java
进行
贪吃蛇
游戏
的
方法 ...
赞
踩
article
git
随记...
git
换源# 查看
git
当前源
git
remote -v # 删除当前源
git
remote remove origi...
赞
踩
相关标签
架构
mybatis
java
系统架构
mysql
EDA
网络
网络安全
运维
windows
web安全
Lua中判断table是否为空
Git
Git拉代码
Git上传代码
Git解决冲突
配置SSH key
pygame
python
开发语言
人工智能
python编程
少儿编程python
python数字反转