吕鑫数据库的使用Ado
https://blog.csdn.net/qq_38611124/article/details/84986527
目录
一、Ado类
二、数据库类型
1、access数据库
2、SQL数据库
3、oracle数据库
三、函数使用
3-1Connect
参数说明
函数使用
3-2Select
参数说明
函数使用--查询
3-3GetFieldByIndex
参数说明
3-4ExecSQL
参数说明
函数使用---插入
函数使用---删除
函数使用---修改
一、Ado类
函数名 | 函数说明 |
AddParam | |
Connect | 连接数据库 |
CreateProc | |
ExecProc | |
ExecSQL | 数据库增、删、改、查 |
GetFieldType | |
GetFieldValue | 根据数据库的字段名获取数据 |
GetFieldMoney | |
GetFieldByIndex | 根据数据库第几条数据获取数据 |
GetFieldCount | |
GetFieldName | |
GetRecordCount | |
GetLastError | 获取数据操作失败原因 |
GetValue | |
Select | 返回所有匹配数据的记录 |
Release | |
IsEOF | 判断数据库是否为空 |
MoveNext | 数据库的指针指向当前数据的后一个数据 |
MovePrev | 数据库的指向当前数据的前一个数据 |
MoveFirst | 数据库的指针指向第一个数据 |
MoveLast | 数据库的指针指向最后一个数据 |
二、数据库类型
1、access数据库
DBT_ACCESS
2、SQL数据库
DBT_SQL
3、oracle数据库
DBT_ORACLE
三、函数使用
3-1Connect
参数说明
参数 | 说明 |
eType | 数据库类型:DBT_ACCESS、DBT_SQL、DBT_ORACLE |
szDatabase | 数据库名字 |
szPass | 密码 |
szUser | 用户名 |
szHost |
函数使用
CAdoLx ado;
if(!ado.Connect(CAdoLx::DBT_ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
3-2Select
参数说明
参数 | 说明 |
szSQL | 操作(LPCTSTR类型) |
函数使用--查询
/*-----------------------无条件查询---------------------------------*/
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
CString szSelect = _T("SELECT *FROM access"); //查询数据库access表的全部数据
if(!ado.Select(szSelect))AfxMessageBox(ado.GetLastError());/*
获取数据库中所有的数据
1、判断数据库指针是否为空:IsEOF
2、读取数据:GetFieldByIndex
3、将数据库指针移动到下一个:MoveNext
*/
while(!ado.IsEOF())
{CString szStr;int nID;ado.GetFieldByIndex(0,&nID); //读取数字类型ado.GetFieldByIndex(1,szStr); //读取字符串类型ado.MoveNext();
}/*-----------------------有条件查询---------------------------------*/
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
/*
操作:SELECT *FROM
表名:access
查询:f_name\f_pass是数据表列名,'access'\'access'是数据表的某一条数据 AND是两者都要存在
*/
CString szSelect = _T("SELECT *FROM access WHERE f_name='access' AND f_pass='access'");
ado.Select(szSelect)
if(!ado.IsEOF())AfxMessageBox(_T("查询数据失败!"));
3-3GetFieldByIndex
参数说明
参数 | 说明 |
nIndex | 数据库中第几列数据 |
tValue | 数据缓冲区 |
3-4ExecSQL
参数说明
参数 | 说明 |
szSQL | 操作(LPCTSTR类型) |
函数使用---插入
/*-----------------------插入全部----------------------------------*/
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
/*
插入的操作:INSERT INTO
表名:access
插入的数据:VALUE括号内的数据,1001是数字 '姓名'是文字,用单引号 '2019-7-26'是日期,也用单引号
*/
CString szSql = _T("INSERT INTO access VALUE(1001,'姓名','2019-7-26')");
if(0 > ado.ExecSQL(szSql))AfxMessageBox(szSql);/*-----------------------插入部分----------------------------------*/
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
/*
插入的操作:INSERT INTO
表名:access
插入的数据:f_id\f_name是列名,表示要在那一列插入VALUE括号内的数据,1001是数字 '姓名'是文字,用单引号
*/
CString szSql = _T("INSERT INTO access (f_id,f_name) VALUE(1001,'姓名')");
if(0 > ado.ExecSQL(szSql))AfxMessageBox(szSql);
函数使用---删除
/*-------------------删除表-------------------------*/
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
/*
插入的操作:DELETE FROM
表名:access
删除整个数据表
*/
CString szSql = _T("DELETE FROM access");
if(0 > ado.ExecSQL(szSql))AfxMessageBox(szSql);/*-------------------删除一条数据-------------------------*/
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
/*
插入的操作:DELETE FROM
表名:access
删除整个数据表:f_id是列名,根据列名来删除 %s是具体的某一条数据,不分数字、字符串
*/
CString szSql = _T("DELETE FROM access WHERE f_id = %s");
if(0 > ado.ExecSQL(szSql))AfxMessageBox(szSql);
函数使用---修改
CAdoLx ado;
if(ado.Connect(DBT::ACCESS,_T("./access.accdb")))AfxMessageBox(ado.GetLastError());
/*
插入的操作:UPDATE 表名 SET 更新的数据
表名:access
修改:f_id\f_name\f_time是要修改数据的列名 f_id是要修改的那一条数据 字符串用单引号,数字不用
*/
CString szSql = _T("UPDATE access SET f_id=1,f_name='access',f_time='2019-1-1' WHERE f_id=1");
if(0 > ado.ExecSQL(szSql))AfxMessageBox(szSql);
吕鑫数据库的使用Ado相关推荐
- 吕鑫的Ado数据库函数
AdoLx.h // AdoLx.h: Version 1.1(支持Unicode.支持VS2015和VC6编译环境) //支持Unicode.支持Access.SQLServer和Oracle三大数 ...
- 有孚网络副总裁吕鑫:合纵连横,云领未来—如何打造低成本混合云架构
上海有孚网络公司已成功打造知名的服务品牌"阳光互联",通过云计算方式向企业提供低成本高性能的平台式信息化服务,已成为中国首批最大的云计算服务商之一.从设计初衷就前瞻性的定位成为中国 ...
- !!!. 数据库的编程(ADO) --- 三种sql语句执行的不同
Description: 一. 数据库的编程(ADO) 要用ADO连接数据的头文件中加入 #import "c:\Program Files\Common Files\Sy ...
- 吕鑫MFC学习系列一
前面有学习MFC比较零乱,利用假期好好恶补一下,接下来按照在网易公开课上吕鑫老师的MFC的教程来学习MFC的开发. 第一个学习的是员工管理系统,先把实现好的窗口贴上来. 主要的功能:添加(员工的工号, ...
- 吕鑫:VC++6.0就业培训宝典之MFC视频教程
视频下载地址: 点击下载 备用下载地址: 点击下载 作者简介 吕鑫,著名软件架构设计师和就业培训专家.从1996年开始使用MFC从事Windows软件开发,是极其罕见的第一代Windows程序员.自2 ...
- 从技术出发 | 有孚网络吕鑫:生信海量数据管理的实践与探讨
从技术出发,推动行业交流,促进体外诊断行业发展--8月27日,2020EDC之2020第四届中国医学检验实验室高峰论坛&2020第三届生物信息分析应用论坛在宁波盛大拉开帷幕.大会聚焦前沿技术 ...
- 吕鑫MFC学习系列七
接着上一节的知识点继续学习MFC的一些重要函数,因为函数设计MFC的基础. 第一步,创建一个MFC工程,然后再将上一节的两个功能添加进来,通过类向导添加DestroyWindow(),第二个按钮通过c ...
- 2021大数据助力精准医疗产业沙龙 | 有孚网络吕鑫:基于专有云打造生物信息云平台
2021年5月12日,大数据助力精准医疗产业沙龙在上海国际医学园区站成功举办.此次会议由中国医药生物技术协会基因检测技术分会.上海市浦东新区生物产业行业协会.中国遗传学会遗传诊断分会.长三角一体化基 ...
- 吕鑫MFC学习系列十
继续吕鑫VS2015的MFC类封装原理学习: 前面已经介绍过了,这一节实现一个员工管理系统中的数据管理和显示. 看一下代码: // workDlg.cpp : 实现文件 //#include &quo ...
最新文章
- 泛前端知识图谱(Web/iOS/Android/RN)
- 接力黄琨儿同志的《给玩命工作却对现状不满的IT人》
- granfana telegraf influx安装与使用
- python socket服务器多线程_Python多线程socket服务器端
- html5 文字转换烟花,HTML5交互式烟花(点击并保持)
- [远航笔记流水账]易大漠多线程初级教程086(1-3)
- IdentityServer4 4.x版本 配置Scope的正确姿势
- Collections带有的排序方法 传入的元素类型 需是子类或者这个类的实例
- linux连接mysql_主机Navicat连接linux(虚拟机)的mysql数据库
- mysql in 文本_MySQL_mysql 的load data infile,LOAD DATA INFILE语句从一个文本文 - phpStudy...
- 二进制与以 2 为底的指数
- Map-Reduce
- Vim编辑器常用命令汇总
- 世界地图矢量文件shp格式获取/下载方法
- 网易 android 加密,解析网易云音乐的加密方式
- 开源推荐 - CoDo开源一站式DevOps平台
- 聚观早报 | 蔚来手机公司正式成立;苹果将取消iPad全系耳机孔
- 单片机概述习题以及答案
- EOF while reading packet
- 室内电子地图-自定义室内地图-室内地图在线工具