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

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
Hacker News: Ask HN
Hacker News: Ask HN
T
Threatpost
WordPress大学
WordPress大学
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 【当耐特】
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
S
SegmentFault 最新的问题
月光博客
月光博客
Latest news
Latest news
博客园 - Franky
T
Threat Research - Cisco Blogs
有赞技术团队
有赞技术团队
博客园_首页
T
The Exploit Database - CXSecurity.com
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
C
Cybersecurity and Infrastructure Security Agency CISA
S
Schneier on Security
Simon Willison's Weblog
Simon Willison's Weblog
爱范儿
爱范儿
Security Latest
Security Latest
Scott Helme
Scott Helme
博客园 - 聂微东
T
Tor Project blog
美团技术团队
IT之家
IT之家
Stack Overflow Blog
Stack Overflow Blog
B
Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
C
Cisco Blogs
Cisco Talos Blog
Cisco Talos Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
G
Google Developers Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
AWS News Blog
AWS News Blog
Jina AI
Jina AI
Vercel News
Vercel News
小众软件
小众软件
T
Tenable Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Forbes - Security
Forbes - Security
aimingoo的专栏
aimingoo的专栏
O
OpenAI News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Last Watchdog
The Last Watchdog
Cloudbric
Cloudbric
AI
AI

博客园 - 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 [教程]创建ADOKeycap数据库对象 认识 yueue.ADOKeycap 开源数据库组件 [教程]使用yueueData统计数据 [教程]在ADOKeycap中使用DataReader读取数据 [教程]使用ADOKeycap插入,更新,删除数据 [教程]添加yueue.ADOKeycap数据库组件到您的项目 - yueue - 博客园
[教程]使用AODKeycap读取数据
yueue · 2007-05-13 · via 博客园 - yueue

注意

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

此处 Database db1 = DatabaseManager.CreateDatabase("ms1"); 只为教学,实际开发中建议创建全局 Database 对象

普通读取

  • 读取"ms1"数据库中book表的所有记录
    Database db1 = DatabaseManager.CreateDatabase("ms1"); //创建数据库对象,"ms1" 为配置文件中所定义数据库名称
    GridView1.DataSource = db1.ExecuteDataSet("select * from book"); //执行查询
    GridView1.DataBind();  
  • 读取"ms1"数据库中book表的第5到第10行记录
    Database db1 = DatabaseManager.CreateDatabase("ms1");
    GridView1.DataSource = db1.ExecuteDataSet("select * from book",4,5);
    GridView1.DataBind();

参数化读取

注意: Access数据库的参数顺序不能有误,SQL数据库无限制.
         使用参数连续读取时,在使用同一个参数对象第2次时,最好先执行 yp.ClearParam(); 清除上次设置的参数

  • 使用参数读取ms1数据库book表中编号为7的记录
    Database db1 = DatabaseManager.CreateDatabase("ms1"); //创建数据库对象
    db1.AddParameter("@ids", 7); //添加参数
    GridView1.DataSource = db1.ExecuteDataSet("select * from book where 编号=@ids");
    GridView1.DataBind();
  • 使用参数读取myss2数据库book表中价格为10,出版社为HZBook的第5到第10行记录
    Database db1 = DatabaseManager.CreateDatabase("myss2"); //创建数据库对象,"myss2" 为配置文件中所定义数据库名称
    db1.AddParameter("@pri", 10);
    db1.AddParameter("@pub", "HZBook");
    GridView1.DataSource = db1.ExecuteDataSet("select * from book where 价格=@pri and 出版社=@pub",4,5);
    GridView1.DataBind();

储存过程读取

注意: Access数据库是伪储存过程(即Access中的查询)故不支持返回类型的参数如 OUTPUT RETURN

  • 使用储存过程UserInfo进行查询,需要指定参数 @Name , 并只返回第5到第10行的数据
    Database db1 = DatabaseManager.CreateDatabase("ms1"); //创建数据库对象,"ms1" 为配置文件中所定义数据库名称
    db1.AddParameter("@Name","bob");
    GridView1.DataSource = db1.ExecuteDataSet("UserInfo",4,5);
    GridView1.DataBind();
  • 使用储存过程UserInfo2进行查询,需要指定参数 @Name @Sex 其中@Sex 为 OUTPUT 类型
    Database db1 = DatabaseManager.CreateDatabase("ms1"); //创建数据库对象,"ms1" 为配置文件中所定义数据库名称
    db1.AddParameter("@Name","XiaoJuan");
    DbParameter dbp = db1.AddOutParameter("@Sex","f");
    if (db1.ExecuteNonQuery("UserInfo2")>0) { Label1.Text = dbp.Value.ToString(); }