惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
H
Hacker News: Front Page
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
Cisco Blogs
P
Palo Alto Networks Blog
Know Your Adversary
Know Your Adversary
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
Cybersecurity and Infrastructure Security Agency CISA
AWS News Blog
AWS News Blog
Spread Privacy
Spread Privacy
S
Schneier on Security
The Hacker News
The Hacker News
Cyberwarzone
Cyberwarzone
T
Tenable Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Tailwind CSS Blog
S
Secure Thoughts
N
Netflix TechBlog - Medium
T
The Exploit Database - CXSecurity.com
I
Intezer
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Help Net Security
Help Net Security
K
Kaspersky official blog
Google Online Security Blog
Google Online Security Blog
L
LangChain Blog
Martin Fowler
Martin Fowler
L
LINUX DO - 热门话题
Hacker News: Ask HN
Hacker News: Ask HN
www.infosecurity-magazine.com
www.infosecurity-magazine.com
有赞技术团队
有赞技术团队
P
Privacy International News Feed
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Recent Announcements
Recent Announcements
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The Register - Security
The Register - Security
云风的 BLOG
云风的 BLOG
Google DeepMind News
Google DeepMind News
阮一峰的网络日志
阮一峰的网络日志
WordPress大学
WordPress大学
Recorded Future
Recorded Future
The Last Watchdog
The Last Watchdog
G
Google Developers Blog
T
Threatpost
小众软件
小众软件
S
Securelist
Recent Commits to openclaw:main
Recent Commits to openclaw:main
O
OpenAI News

博客园 - yueue

Ext Portal如何消除横向滚动条 JavaScript中的对象动态加载技术 JavaScript使用ACTIVEX控件引起崩溃问题的解决 如何把Ext.data.store里的数据一次性用JSON传给后台(添加了后台解析部分) 解决EXT DateField 用getValue() 发送到后台,后台取null的问题 - yueue 如何使开启了分页功能的EXT Combox可以自动选中非第一页的值 ExtJs 中一个Toolbar 不够用?再来一个! - yueue 为什么ext combox 下拉框不出现自动提示,自动选中 如何做一个两列的FormPanel json-lib出现There is a cycle in the hierarchy解决办法 EXT如何把一个对象转换为JSON并将其发送到服务器 - yueue - 博客园 ExtJs如何通过JSON与后台通信 ExtJs 及 Ajax 乱码解决方案 - yueue 认识 yueue.ADOKeycap 开源数据库组件 [教程]使用yueueData统计数据 [教程]在ADOKeycap中使用DataReader读取数据 [教程]使用ADOKeycap插入,更新,删除数据 [教程]使用AODKeycap读取数据 [教程]添加yueue.ADOKeycap数据库组件到您的项目 - yueue - 博客园
[教程]创建ADOKeycap数据库对象
yueue · 2007-05-26 · via 博客园 - yueue

为什么要创建数据库对象行?
ADOKeycap 必须创建Database 数据库对象,才能对数据库进行操作,ADOkeycap 中的一个数据库对象就代表了现实中的一个数据库.对这个对象的操作也就是对数据库的操作了.

怎样创建数据库对象?

ADOKeycap 数据库对象由DatabaseManager 类负责创建,有两种创建数据库对象的方法:

1.使用配置文件指定数据库并创建数据库对象.

使用配置文件指定数据库繁杂一些,但是当需要改变数据库时只需要改变配置文件,不用改变代码是它的优点.
在ASP.NET程序中,默认配置文件为"Web.config" WinForm 程序则是"app.config" (可通过右击工程->"添加新项"->"Web配置文件"来添加). 这种方式以Web.config为例
首先我们需要对Web.config文件进行编辑,在"connectionStrings"节添加一个新的子节:

<add name="mydb1" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data\mydb.mdb;Jet OLEDB:Database Password=MyDbPassword;" providerName="oledb"/>

在图中可看到. 下面来分析一下它.

其中 name 属性"mydb1" 是为这个数据库所起的名称,是一个标识, 以后使用DatabaseManager创建数据库对象将用到这个标识来确定创建哪个数据库的数据库对象.

其中 connectionString 属性 "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=data\mydb.mdb;Jet OLEDB:Database Password=MyDbPassword;"  就是数据库的连接字符串,这将取决于您的数据库种类,(连接字符串的详细列表参见(http://www.cnblogs.com/yueue/archive/2007/05/09/740561.html)

其中 providerName 属性 "oledb"  是用来设置数据库的驱动类型的,可以输入的类型见下表

可选值 数据驱动程序 常用的数据库
OleDb System.Data.OleDb Access
Sql System.Data.SqlClient MS SQL Server
Oracle System.Data.OracleClient Oracle
ODBC System.Data.Odbc Odbc支持的数据库

要注意这里的可选值是可以填写在 providerName 属性中的值,并且它不区分大小写,支持模糊,比如您添"SQLClient","Sql","system.data.sqlclient" ADOKeycap 都可以识别为使用System.Data.SqlClient数据驱动.

这样就完成了Web.config的配置, 只要在使用DatabaseManager 创建数据库对象时添入设置的数据库名称,如本例中的"mydb1"即可对此数据库进行操作.

范例

请注意引用:

using System.Data.Common;
using yueue.ADOKeycap;

Database db1 = DatabaseManager.CreateDatabase("mydb1");

此例中 DatabaseManager.CreateDatabase("mydb1") 操作就是创建一个"mydb1"数据库对象,并把他赋值给  Database 类型的变量 db1
之后就可以用db1进行所有的数据库操作了.

2.直接指定数据库并创建数据库对象
这种方式效率高而且简单,并且可以实现使用相对路径.但是由于它指定数据时是将数据库信息编码在系统中的.所以当需要改变时,需要修改创建数据库对象的代码(注意:只是改变创建数据库对象这一行代码,其他代码无须改动)
范例
请注意引用:

using System.Data.Common;
using yueue.ADOKeycap;


Database db2 = DatabaseManager.CreateDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source ="+MapPath("data\testdb1.mdb")+";","oledb");

可选值 数据驱动程序 常用的数据库
OleDb System.Data.OleDb Access
Sql System.Data.SqlClient MS SQL Server
Oracle System.Data.OracleClient Oracle
ODBC System.Data.Odbc Odbc支持的数据库

要注意这里的可选值是可以填写在 第二个参数中的值,并且它不区分大小写,支持模糊,比如您添"SQLClient","Sql","system.data.sqlclient" ADOKeycap 都可以识别为使用System.Data.SqlClient数据驱动.
之后您就可以使用 db2 来完成所有数据库对象了!

愿您使用ADOKeycap 愉快! 其他具体使用教程请参见 data.yueue.cn