摘要: unit untWorkThread;interfaceuses Windows,Classes,SysUtils;type TWorkItem=class end; TProcessWork=procedure (Sender:TObject;Work:TWorkItem) of Object; TWorkThread=class(TThread) private FCriticalSection:TRTLCriticalSection; hEvent:Cardinal; FList:TList; FProcessWork:TProcessWork; ... 阅读全文
posted @ 2013-10-29 21:04 无悔的勇气 阅读(588) 评论(0) 推荐(0) 编辑
摘要: {-------------------------------------------------------------------------------过程名: MakeFileList 遍历文件夹及子文件夹参数: Path,FileExt:string 1.需要遍历的目录 2.要遍历的文件扩展名返回值: TStringListUSE StrUtils Eg:ListBox1.Items:= MakeFileList( 'E:\极品飞车','.exe') ; ListBox1.Items:= MakeFileList( 'E:\极品飞车' 阅读全文
posted @ 2013-10-29 21:03 无悔的勇气 阅读(1785) 评论(0) 推荐(0) 编辑
摘要: //备注:mysql必须是使用innoDB引擎才支持事务功能,否则以下事务相关代码将失效。//SQL SERVER和Oracle还没试,明天回公司试了再发代码。procedure TForm1.btn1Click(Sender: TObject);var i, j: Integer;begin UniConnection1.Connect; try try UniTransaction1.Connections[0].StartTransaction; UniQuery1.Params.Clear; UniQuery1.SQL.Text := 'ins... 阅读全文
posted @ 2013-10-29 20:56 无悔的勇气 阅读(677) 评论(0) 推荐(0) 编辑
摘要: 关于查询某个SQLITE3DB的所有表单的语句:UniQuery1.SQL.Add('SELECT * FROM sqlite_master');关于UNIDAC提交数据://在提交数据之前,必须先允许EDIT,否则提交的时候会失败。UniQuery1.Edit;//此处的FieldList[I]是指数据所在行的第I个数据,所有的数据,都可以用文本提交上去UniQuery1.FieldList[I].AsString:='提交的数据';//获取数据也是这个,它具备读取跟写入功能,是一个接口。 S:=UniQuery1.FieldList[I].AsString/ 阅读全文
posted @ 2013-10-29 20:54 无悔的勇气 阅读(1406) 评论(0) 推荐(0) 编辑
摘要: unidac 执行Execute后取得受影响行数。uniQuery2.SQL.Text := mmo2.Text; uniQuery2.Execute; mmo1.Lines.Add(Format('受影响行数:%d', [uniQuery2.RowsAffected])); 阅读全文
posted @ 2013-10-29 20:54 无悔的勇气 阅读(408) 评论(0) 推荐(0) 编辑
摘要: FIREDAC与UNIDAC有些不同但大体上是相同的以下是一些随手笔记:FieldCount是当前FDQuery2所在行里面有多少列一般用FieldList[X]来代表第几列str:=FDQuery2.FieldList[0].AsString;RecordCount 是查询一共返回多少条数据一般用FDQuery1.Next; 来切换到下一行数据//-------------------------------下面是我常用的查询某表最大ID的样式FDQuery2.Close; FDQuery2.SQL.Clear; FDQuery2.SQL.Add('SELECT MAX(ID) FR 阅读全文
posted @ 2013-10-29 20:53 无悔的勇气 阅读(1651) 评论(0) 推荐(0) 编辑
摘要: 当你选择Oracle作数据库服务器时,客户端一般需要装一个肥硕的200M左右客户端,而且还要做连接配置,尤其是C/S模式,客户端多的时候非常不便。当然,网上也有一个10M左右的Oracle精简客户端,性能和稳定性和官方版差不多。Oracle还提供了Direct Mode(直连模式),只要你的客户端机子支持TCP/IP协议,完全可以不用安装Oracle客户端及其连接配置。幸运的是,UniDAC也提供了Direct Mode。只需要如下简单配置:1、在TUniConnection控件上点击右键,选择菜单“Connection Editor”,在弹出的对话框中选择分页“Options”,“Optio 阅读全文
posted @ 2013-10-29 20:51 无悔的勇气 阅读(668) 评论(0) 推荐(0) 编辑
摘要: UniDAC是一个功能强大的非可视化跨数据库的数据访问组件,可用于Delphi,Delphi for .NET,C++Builder,and Lazarus (Free Pascal)。它提供了对流行数据库服务器的统一访问,像Oracle,Microsoft SQL Server,MySQL,InterBase,Firebird,PostgreSQL,SQLite,DB2,Microsoft Access,Sybase Advantage Database Server,Sybase Adaptive Server Enterprise,和其他数据库(使用ODBC驱动)。 从网上下载到Uni. 阅读全文
posted @ 2013-10-29 20:49 无悔的勇气 阅读(572) 评论(0) 推荐(0) 编辑
摘要: DELPHI中使用UNIDAC连接ORACLE数据库最近在DELPHI中使用到UNIDAC连接到oracle数据库,这样可以不要安装oracle客户端,比较方便使用;所以简单学习了一下,主要是用到查询和执行存储过程,其中存储过程我测试了没有返回参数、有返回参数、有多高返回参数、有返回游标等存储过程,没有深入研究,以下就简单的查询和执行存储过程按步骤说一下:1,执行查询语句: a)新建一个ORACLECONNECTION。如图所示:b)双击ORACLECONNECTION,出现下图,按图填写连接ORACLE的相关参数,点击CONNECT就可以连接了。c)添加一个Tuniquery,编写SQL语句 阅读全文
posted @ 2013-10-29 20:49 无悔的勇气 阅读(4390) 评论(0) 推荐(0) 编辑
摘要: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, DB, DBAccess, Uni, MemDS, UniProvider, InterBaseUniProvider;type TForm1 = class(TForm) UniConnTest: TUniConnection;//用于数据库的连接 InterBaseUniProTest: TI... 阅读全文
posted @ 2013-10-29 20:44 无悔的勇气 阅读(728) 评论(0) 推荐(0) 编辑