程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 第十五章-數據訪問部件的應用及編程(一)(2)

第十五章-數據訪問部件的應用及編程(一)(2)

編輯:Delphi

15.2.3 TSession部件應用舉例 

例15.1:我們創建一個應用程序,通過調用TSession有關的方法獲取當前應用程序可以進行連接的數據庫的名字以及獲取其中任意一個數據庫中的全部數據庫表的名字。 

通過TSession部件獲取數據庫的有關信息 

窗體中主要使用了兩個列表框,其中列表框DatabaselistBox用於顯示數據庫的名字,列表框TablelistBox用於顯示數據庫中的表名。程序運行完後數據庫的名字顯示在DatabaselistBox列表框中,當用戶單擊DatabaselistBox列表框中的數據庫名時,該數據庫全部的數據庫表的名字將會顯示在TablelistBox列表框中。有關的程序代碼如下: 

程序清單15.1

unit unit31; 

interface 

uses

SysUtils, Windows, Messages, Classes, Graphics, Controls,

Forms, Dialogs, StdCtrls, DB, DBTables, Buttons, ComCtrls, Tabnotbk; 

type 

TQueryForm = class(TForm)

BitBtn1: TBitBtn;

DataSource1: TDataSource;

Table1: TTable;

GroupBox1: TGroupBox;

CheckBox1: TCheckBox;

CheckBox2: TCheckBox;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

ListBox1: TListBox;

ListBox2: TListBox;

ListBox3: TListBox;

TabSheet2: TTabSheet;

Memo1: TMemo;

procedure FormCreate(Sender: TObject);

procedure ListBox1Click(Sender: TObject);

procedure ListBox2Click(Sender: TObject);

end;

var

QueryForm: TQueryForm;

implementation

{$R *.DFM}

uses RSLTFORM;

procedure TQueryForm.FormCreate(Sender: TObject);

begin

Screen.Cursor := crHourglass;

{ Populate the alias list }

with ListBox1 do

begin

Items.Clear;

Session.GetAliasNames(Items);

end;

{ Make sure there are aliases defined }

Screen.Cursor := crDefault;

if ListBox1.Items.Count < 1 then

MessageDlg( 'There are no database aliases currently defined. You ' +

'need at least one alias to use this demonstration.',

mtError, [mbOK], 0 );

end;

procedure TQueryForm.ListBox1Click(Sender: TObject);

var

strValue: string; { Holds the alias selected by the user }

bIsLocal: Boolean; { Indicates whether or not an alias is local }

slParams: TStringList; { Holds the parameters of the selected alias }

iCounter: Integer; { An integer counter variable for loops}

begin

{ Determine the alias name selected by the user }

with ListBox1 do

strValue := Items.Strings[ItemIndex];

{ Get the names of the tables in the alias and put them in the

appropriate list box, making sure the user's choices are reflected

in the list. } 

ListBox2.Items.Clear;

Session.GetTableNames(strValue, { alias to enumerate }

'', { pattern to match } 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved