unit MyClass;
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
VCLCom, StdVcl, DBClient,Grids, DBGrids,ComCtrls, DB, ADODB, Provider;
type
TMyDataClass = class
private
FAdoConn : TADoConnection; //Ado数据连接
aqTmp: TADoQuery;
acmd: TAdoCommand;
aspTmp: TADOStoredProc;
public
function OpenQuery(Sqlstr:string):boolean; overload;//传入sql打开数据
function OpenQuery(Query:TAdoQuery;Sqlstr:string):boolean; overload;//传入sql打开数据
function OpenDataSetByPara(InPara:variant;adsTmp:TadoDataSet):boolean;overload;//传入参数,打开一个dataset
function OpenDataSet(DataSet:TADoDataSet;Sqlstr:string):boolean;
function IsExists(Sqlstr:string):boolean;//传入sql查询是否记录存在,true存在
function Get_Sql_Value(sqlstr:string):variant;//输入sql,返回一个字段数值
function ExecSql(Sqlstr:string):boolean;overload; //执行一段sql命令
function ExecSql(Sqlstr:string;pTrans:boolean):boolean;overload; //执行一段sql命令
//执行存储过程
function ExecProc(ProcName: string; var ParamStrs: array of variant;
Direction: array of TParameterDirection): boolean;overload;
function ExecProc(ADOStoredProc: TADOStoredProc ;ProcName: string; var ParamStrs: array of variant;
Direction: array of TParameterDirection;ExecType:byte): boolean;overload;
//数据更新函数,pTrans:事务处理,返回值:true成功,false失败
function SaveData(ads_Tmp: array of TADODataSet;pTrans:Boolean):boolean;overload;
function UpdateValueToField(pDataSet:TDataSet;value:variant;FieldName:string):boolean;//更新数据表某个字段数值
function ChangeFieldValue(pDataSet:TDataSet;Oldvalue,NewValue:variant;FieldName:string):boolean;//更新数据表某个字段数值
//删除指定的记录,返回值:FieldName字段,fieldValue:指定的记录数值
function DeleteRecord(ads_Tmp: TADODataSet;FieldName:string;FieldValue:variant):boolean;overload;
procedure DeleteTable(DataSet:TDataSet);//删除数据表所有记录
function Check_Unique_Field_Value(sqlstr:string):boolean;//验证字段数值是否唯一
procedure Set_Filter(str_filter:string;DataSEt:TDATASET);//设置过滤
Constructor Create(AdoConn: TAdoConnection);
Destructor Destroy;override;
end;
var
MyDataClass: TMyDataClass;
implementation
...
------------{实现}
Constructor TMyDataClass.Create(AdoConn: TAdoConnection);
begin
FAdoConn := AdoConn;
aqTmp := TADoQuery.Create(nil);
aqTmp.Connection :=FAdoConn;
acmd := TAdoCommand.Create(nil);
acmd.Connection := FAdoConn;
aspTmp := TADOStoredProc.Create(nil);
aspTmp.Connection :=FAdoConn;
end;
Destructor TMyDataClass.Destroy;
begin
inherited;
end;
...
------------{调用}
var MyDataClass: TMyDataClass;
MyDataClass :=TMyDataClass.Create(dm.ADOConnection1);
- 我的DbHelper数据操作类
其实,微软的企业库中有一个非常不错的数据操作类了.但是,不少公司(起码我遇到的几个...),对一些"封装"了些什么的东西不太敢用,虽然我推荐过微软的企业库框架了...但是还是要&q ...
- DbHelper数据操作类
摘要:本文介绍一下DbHelper数据操作类 微软的企业库中有一个非常不错的数据操作类.但是,不少公司(起码我遇到的几个...),对一些"封装"了些什么的东西不太敢用,虽然我推荐过 ...
- 我的DbHelper数据操作类(转)
其实,微软的企业库中有一个非常不错的数据操作类了.但是,不少公司(起码我遇到的几个...),对一些"封装"了些什么的东西不太敢用,虽然我推荐过微软的企业库框架了...但是还是要&q ...
- Redis简单的数据操作(增删改查)
#Redis简单的数据操作(增删改查): 字符串类型 string 1. 存储: set key value 127.0.0.1:6379> set username zhangsan OK 2 ...
- 基于 Aspose.Cells与XML导入excel 数据----操作类封装
前言 导入excel数据, 在每个项目中基本上都会遇到,第三方插件或者基于微软office,用的最多的就是npoi,aspose.cells和c#基于office这三种方式,其中各有各的优缺点,在这也 ...
- 简单的XML操作类
/// <summary> /// XmlHelper 的摘要说明. /// xml操作类 /// </summary> public class XmlHelper { pr ...
- java学习笔记——大数据操作类
java.math包中提供了两个大数字操作类:BigInteger(大整数操作类) BigDecimal(大小数操作类). 大整数操作类:BigInteger BigInteger类构造方法:publ ...
- 百度地图LBS云平台读写数据操作类
最近写了个叫<行踪记录仪>的手机软件,用了百度云来记录每个用户的最近位置,以便各用户能在地图上找到附近的人,为此写了个类来读写数据,大致如下: import java.util.Array ...
- 通过一个简单的数据库操作类了解PHP链式操作的实现
class Model{ public $table; //操作的表; private $opt; //查询的参数; private $pri; //表的主键; private $lastSql; / ...
随机推荐
- 置换测试: Mock, Stub 和其他
简介 在理想情况下,你所做的所有测试都是能应对你实际代码的高级测试.例如,UI 测试将模拟实际的用户输入(Klaas 在他的文章中有讨论)等等.实但际上,这并非永远都是个好主意.为每个测试用例都访问一 ...
- HttpServletRequest对象,自己学习的心得。
1. HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过Http超文本传输协议访问服务器时,Http请求头中的所有信息都封装在这个对象中, ...
- serialize可以获取form表单里面的数值
serialize属性 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- jvm 脑图
- 第二章 TCP/IP 基础知识
第二章 TCP/IP 基础知识 TCP/IP transmission control protocol and ip internet protocol 是互联网众多通信协议中最为著名的. ...
- iOS-UI控件之UITableView(四)- cell数据刷新
TableView- 数据刷新 数据刷新 添加数据 删除数据 更改数据 全局刷新方法(最常用) [self.tableView reloadData]; // 屏幕上的所有可视的cell都会刷新一遍 ...
- Microsoft SQL Server学习(二)
目录 关于数据库的语法: 1.创建数据库 create database 数据库名 on primary (主文件属性(name,filename,size等)) -用逗号隔开次要主要文件和次要文件 ...
- 软件开发:速度 vs 质量
程序开发项目进行过程中,通常会冒出这样的困惑:应该选择速度,还是选择质量?很多程序猿都会有偷懒的思维,觉得把一些摸不清头绪.不知道怎么写的代码片段去掉,可以节省很多时间,更早完成项目计划. 其实过去几 ...
- ascii - 在八进制,十进制,十六进制中的 ASCII 字符集编码
描述 ASCII 是美国对于信息交换的标准代码,它是7位码,许多8位码(比如 ISO 8859-1, Linux 的默认字符集)容纳 ASCII 作为它们的下半部分.对应的国际 ASSII 是 ISO ...
- 修改qq热键后 安全设置-》自动锁定设置 就能保存住qq的热键了