![]() |
Delphi Handbooks Collection Delphi Developer Days 2012 March-May Cantù-Jensen (UK, NL, US, D, I) |
Menu for Development
|
|
| ||||||||||||||||||||||||
|
||||||||||||||||||||||||||
| Chapter 14 - Project SchemaTest |
Project Structure |
| SchemaTest.dpr |
program SchemaTest; uses Forms, SchemaForm in 'SchemaForm.pas' {FormSchema}; {$R *.res} begin Application.Initialize; Application.CreateForm(TFormSchema, FormSchema); Application.Run; end. |
| SchemaForm.pas |
unit SchemaForm; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DBXpress, FMTBcd, Provider, DBClient, DB, SqlExpr, Grids, DBGrids, StdCtrls; type TFormSchema = class(TForm) btnTables: TButton; btnFields: TButton; DBGrid1: TDBGrid; DataSource1: TDataSource; SQLConnection1: TSQLConnection; SQLDataSet1: TSQLDataSet; ClientDataSet1: TClientDataSet; DataSetProvider1: TDataSetProvider; procedure btnTablesClick(Sender: TObject); procedure btnFieldsClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FormSchema: TFormSchema; implementation {$R *.dfm} procedure TFormSchema.btnTablesClick(Sender: TObject); begin ClientDataSet1.Close; SQLDataSet1.SetSchemaInfo (stTables, '', ''); ClientDataSet1.Open; end; procedureTFormSchema.btnFieldsClick(Sender: TObject); begin SQLDataSet1.SetSchemaInfo (stColumns, ClientDataSet1['Table_Name'], ''); ClientDataSet1.Close; ClientDataSet1.Open; end; end. |
| SchemaForm.dfm |
object FormSchema: TFormSchema Left = 196 Top = 107 Width = 643 Height = 414 Caption = 'SchemaTest' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = False PixelsPerInch = 96 TextHeight = 13 object btnTables: TButton Left = 30 Top = 13 Width = 65 Height = 22 Caption = 'Tables' TabOrder = 0 OnClick = btnTablesClick end object btnFields: TButton Left = 105 Top = 13 Width = 64 Height = 22 Caption = 'Fields' TabOrder = 1 OnClick = btnFieldsClick end object DBGrid1: TDBGrid Left = 32 Top = 48 Width = 580 Height = 313 Anchors = [akLeft, akTop, akRight, akBottom] DataSource = DataSource1 TabOrder = 2 TitleFont.Charset = DEFAULT_CHARSET TitleFont.Color = clWindowText TitleFont.Height = -11 TitleFont.Name = 'MS Sans Serif' TitleFont.Style = [] end object DataSource1: TDataSource DataSet = ClientDataSet1 Left = 200 Top = 72 end object SQLConnection1: TSQLConnection ConnectionName = 'IBLocal' DriverName = 'Interbase' GetDriverFunc = 'getSQLDriverINTERBASE' LibraryName = 'dbexpint.dll' LoginPrompt = False Params.Strings = ( 'BlobSize=-1' 'CommitRetain=False' 'Database=c:\program files\interbase corp\interbase6\examples\dat' + 'abase\employee.gdb' 'DriverName=Interbase' 'LocaleCode=0x0000' 'Password=masterkey' 'RoleName=RoleName' 'ServerCharSet=ASCII' 'SQLDialect=1' 'Interbase TransIsolation=ReadCommited' 'User_Name=sysdba' 'WaitOnLocks=True') VendorLib = 'GDS32.DLL' Left = 72 Top = 168 end object SQLDataSet1: TSQLDataSet SQLConnection = SQLConnection1 Params = <> Left = 184 Top = 168 end object ClientDataSet1: TClientDataSet Aggregates = <> Params = <> ProviderName = 'DataSetProvider1' Left = 312 Top = 80 end object DataSetProvider1: TDataSetProvider DataSet = SQLDataSet1 Constraints = True Left = 272 Top = 136 end end |