?? untttype.pas
字號(hào):
{*******************************************************}
{ }
{ 單元名稱: UntTType }
{ 創(chuàng)建日期: 2005-08-17 }
{ 摘要說(shuō)明: 數(shù)據(jù)表Type操作實(shí)體類 }
{ }
{ 詳細(xì)說(shuō)明: }
{ }
{ 參 閱: }
{ }
{ 已知問(wèn)題: }
{ }
{ 待作事項(xiàng): }
{ }
{ 作 者: 胡孟杰 }
{ Copyright (C) 2005 FdAuto }
{ 當(dāng)前版本: 1.0 }
{ 版本歷史: }
{ }
{*******************************************************}
{$DEFINE TType}
unit UntTType;
{==========================================================================
單元接口部分
==========================================================================}
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ADODB, Variants;
{==========================================================================
類 名: Tconfig
功 能: 類Tconfig的定義,是類TFunc的基類
參 數(shù): 無(wú)
返回值: 無(wú)
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
type
Tconfig = class(TObject)
public
AdoQuery: TAdoQuery;
constructor Create(Adoconnection: TAdoconnection);
destructor Destroy; override;
end;
{==========================================================================
類 名: TType
功 能: 類TType的定義,繼承自類Tconfig
參 數(shù): 無(wú)
返回值: 無(wú)
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
{$IFDEF TType}
TType = class(Tconfig)
private
public
PType: string; // 類別名稱
function FindRecorder(GiveValueToVariant: boolean): boolean; //查找某一條記錄,用主鍵值做條件
function InsertIntoTable: boolean; //向表中插入一條記錄
function UpdateTable(OldType: string): boolean; //更新一條記錄,用主鍵值做條件
function DeleteTable(PromptDlg: boolean): boolean; //刪除一條記錄,用主鍵值做條件
end;
{$ENDIF}
{==========================================================================
單元實(shí)現(xiàn)部分
==========================================================================}
implementation
{ Tconfig }
{==========================================================================
函數(shù)名: Tconfig.create
功 能: 類Tconfig的構(gòu)造函數(shù)
參 數(shù): ADOConnection:數(shù)據(jù)庫(kù)連接對(duì)象
返回值: 無(wú)
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
constructor Tconfig.create(ADOConnection: TADOConnection);
begin
ADOQuery := TADOQuery.Create(nil);
ADOQuery.Connection := ADOConnection;
end;
{==========================================================================
函數(shù)名: Tconfig.Destroy
功 能: 類Tconfig的析構(gòu)函數(shù)
參 數(shù): 無(wú)
返回值: 無(wú)
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
destructor Tconfig.Destroy;
begin
ADOQuery.Close;
ADOQuery.Free;
ADOQuery := nil;
inherited;
end;
{$IFDEF TType}
{==========================================================================
函數(shù)名: TType.InsertIntoTable
功 能: 在表Type中插入一條記錄,返回執(zhí)行成功與否
參 數(shù): 各屬性先行賦值
返回值: True,false
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
function TType.InsertIntoTable: boolean;
begin
result := false;
with ADOQuery do
begin
Close;
Sql.text :=
'Insert into Type (' +
'Type) values (' +
':P_Type) ';
Parameters.ParamByName('P_Type').Value := Copy(PType, 1, 150); // 類別名稱
try
EXECSql;
result := True;
except
Application.MessageBox('插入存儲(chǔ)失敗!', '系統(tǒng)提示', MB_ICONWARNING);
end;
end;
end;
{==========================================================================
函數(shù)名: TType.UpdateTable
功 能: 依據(jù)主鍵在表Type中更新一條記錄,返回執(zhí)行成功與否
參 數(shù): 各屬性先行賦值
返回值: True,false
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
function TType.UpdateTable(OldType: string): boolean;
begin
result := false;
with ADOQuery do
begin
Close;
Sql.text := ' Update Type set ' +
'Type=:P_Type' +
' Where (Type=:Old_Type)';
Parameters.ParamByName('P_Type').Value := Copy(PType, 1, 150); // 類別名稱
Parameters.ParamByName('Old_Type').Value := Copy(OldType, 1, 150); // 類別名稱
try
EXECSql;
result := true;
except
Application.MessageBox('更新存儲(chǔ)失敗!', '系統(tǒng)提示', MB_ICONWARNING);
end;
end;
end;
{==========================================================================
函數(shù)名: TType.DeleteTable
功 能: 依據(jù)主鍵在表Type中刪除一條記錄,返回執(zhí)行成功與否
參 數(shù): 主鍵屬性先行賦值,PromptDlg:是否彈出確認(rèn)刪除對(duì)話框
返回值: True,false
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
function TType.DeleteTable(PromptDlg: boolean): boolean;
begin
result := false;
with ADOQuery do
begin
Close;
Sql.text := ' Delete From Type Where Type=:P_Type';
Parameters.ParamByName('P_Type').Value := PType; // 類別名稱
if PromptDlg then
begin
if Application.MessageBox('你將刪除選定的記錄,繼續(xù)嗎?', '系統(tǒng)提示',
MB_OKCANCEL + MB_ICONWARNING) = 1 then
begin
ExecSql;
result := true;
end;
end
else
begin
ExecSql;
result := true;
end;
end;
end;
{==========================================================================
函數(shù)名: TType.FindRecorder
功 能: 依據(jù)主鍵在表Type中查找一條記錄,返回執(zhí)行成功與否
參 數(shù): 主鍵屬性先行賦值,GiveValueToVariant:是否把檢索結(jié)果賦值到各屬性
返回值: True,false
作 者: 胡孟杰
日 期: 2005.08.17
==========================================================================}
function TType.FindRecorder(GiveValueToVariant: boolean): boolean;
begin
Result := false;
with ADOQuery do
begin
Close;
Sql.text := ' Select Type From Type Where Type=:P_Type';
Parameters.ParamByName('P_Type').Value := PType; // 類別名稱
Open;
if RecordCount > 0 then
begin
Result := true;
if GiveValueToVariant then
begin
PType := Fieldbyname('Type').AsString; //類別名稱
end;
end;
end;
end;
{$ENDIF}
end.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -