4 Page2Enter database params= 4 Page1TableX 9i begin i := 0;  Query1.ExecSQL; ( while (i < 12) and (not Query1.EOF) do  begin  Query1.Next;  i := i + 1;  end;  Query1.First; end 4 $$Formx|,begin  RtfText := ''; end TfrEditControlhEdit1+,Tahoma TfrLabelControlLabel2 ,Tahoma$Database name (full path to DB file) TfrEditControlEdit28y,Tahoma TfrEditControl Edit3Xy,Tahoma TfrButtonControlButton3xK,begin DB.DatabaseName := Edit1.Text;  DB.UserName := Edit2.Text;  DB.Password := Edit3.Text;  DB.Connected := TRUE; endTahomaOK TfrLabelControlLabel3x<4 ,Tahoma User Name TfrLabelControl,Label4\. ,TahomaPassword TfrFIBDatabase*DB,@,C:\IB6_DATA\TEST.gdbuser_name=SYSDBA password=masterkey lc_ctype=WIN1251 password=jhgasjdfa password=masterkey password= password=masterkey TfrFIBQuery Query$,@,DBselect f.rdb$field_name, f.rdb$field_source, f.rdb$null_flag, f.rdb$default_source, f.rdb$description, fs.rdb$field_name, fs.rdb$field_type, fs.rdb$field_length, fs.rdb$field_scale, fs.rdb$field_sub_type, fs.rdb$segment_length, fs.rdb$dimensions, d.rdb$dimension, d.rdb$lower_bound, d.rdb$upper_bound, fs.rdb$character_set_id, f.rdb$collation_id, cr.rdb$character_set_name, co.rdb$collation_name, f.rdb$field_position, fs.rdb$computed_source ,r.rdb$relation_name from rdb$relations r Lleft join rdb$relation_fields f on f.rdb$relation_name = r.rdb$relation_name Aleft join rdb$fields fs on fs.rdb$field_name = f.rdb$field_source Hleft join rdb$field_dimensions d on d.rdb$field_name = fs.rdb$field_name Tleft join rdb$character_sets cr on fs.rdb$character_set_id = cr.rdb$character_set_id Nleft join rdb$collations co on ((f.rdb$collation_id = co.rdb$collation_id) and 4(fs.rdb$character_set_id = co.rdb$character_set_id)) 'where rdb$relation_name = :RelationName 2order by r.rdb$relation_name, f.rdb$field_positionRDB$FIELD_NAMERDB$FIELD_SOURCE RDB$NULL_FLAGRDB$DEFAULT_SOURCERDB$FIELD_NAME1RDB$FIELD_TYPERDB$FIELD_LENGTHRDB$FIELD_SCALERDB$FIELD_SUB_TYPERDB$SEGMENT_LENGTHRDB$DIMENSIONS RDB$DIMENSIONRDB$LOWER_BOUNDRDB$UPPER_BOUNDRDB$CHARACTER_SET_IDRDB$COLLATION_IDRDB$CHARACTER_SET_NAMERDB$COLLATION_NAMERDB$FIELD_POSITIONRDB$COMPUTED_SOURCERDB$RELATION_NAMERDB$DESCRIPTION'[DialogForm.Query1."RDB$RELATION_NAME"] TfrButtonControlButton13K, MS Sans SerifOK TfrFIBQueryZQuery1D,@,DBselect rdb$relation_name from rdb$relations order by rdb$relation_nameRDB$RELATION_NAME TfrDBLookupControlDBLookupComboBox1),TahomaQuery1RDB$RELATION_NAMERDB$RELATION_NAME TfrLabelControlLabel18 , MS Sans Serif Select table TfrButtonControl:Button23K, MS Sans SerifCancel PageHeader1$/0begin # DATABASE_NAME := DB.DatabaseName;  USER_NAME := DB.UserName; endc MasterHeader1xL0U MasterData21DialogForm._Query?begin 3 FieldType := [DialogForm.Query."RDB$FIELD_TYPE"]; : FieldSubType := [DialogForm.Query."RDB$FIELD_SUB_TYPE"]; : FieldScale := -1 * [DialogForm.Query."RDB$FIELD_SCALE"]; 7 FieldLength := [DialogForm.Query."RDB$FIELD_LENGTH"];  if FieldType = 261 then 1 FType := 'BLOB sub_type ' + Str(FieldSubType)  else if FieldType = 14 then - FType := 'CHAR(' + Str(FieldLength) + ')'  else if FieldType = 37 then 0 FType := 'VARCHAR(' + Str(FieldLength) + ')'  else if FieldType = 40 then 0 FType := 'CSTRING(' + Str(FieldLength) + ')'  else if FieldType = 12 then  FType := 'DATE'  else if FieldType = 13 then  FType := 'TIME'  else if FieldType = 35 then  begin  if DB.SQLDialect < 3 then  FType := 'DATE'  else  FType := 'TIMESTAMP';  end  else if FieldType = 7 then  FType := 'SMALLINT'  else if FieldType = 8 then  begin  if FieldScale > 0 then 3 FType := 'NUMERIC(9,' + Str(FieldScale) + ')'  else  FType := 'INTEGER';  end  else if FieldType = 27 then  begin  if FieldScale > 0 then 4 FType := 'NUMERIC(15,' + Str(FieldScale) + ')'  else & FType := 'DOUBLE PRECISION';  end  else if FieldType = 16 then  begin  if FieldScale > 0 then 4 FType := 'NUMERIC(18,' + Str(FieldScale) + ')'  else  FType := 'INTEGER64';  end  else if FieldType = 10 then  FType := 'FLOAT'  else  FType := 'UNKNOWN'; b RtfText := RtfText + '\par ' + [DialogForm.Query."RDB$FIELD_NAME"] + ' \b ' + FType + '\b0 '; F if ((FieldType = 14) or (FieldType = 37) or (FieldType = 261)) and 9 ([DialogForm.Query."RDB$CHARACTER_SET_ID"] > 0) then e RtfText := RtfText + ' \b ' + 'character set\b0 ' + [DialogForm.Query."RDB$CHARACTER_SET_NAME"];  RtfText := RtfText + ','; end) MasterData1 &11begin RtfText := '{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fnil\fcharset204{\*\fname Courier New;}Courier New CYR;}}' + 3 '{\colortbl ;\red0\green0\blue0;}' + d '\viewkind4\uc1\pard\cf1\lang1033\b\f0\fs20 CREATE\b0 \b TABLE\b0 ART (' + RtfText;  0 RtfText := RtfText + ');\lang1049 \par }'; endMemo138,Arial IMemo1,$ [DialogForm.Query."RDB$FIELD_NAME"]Tahoma Memo3, [FType]Tahoma Line1M,Memo50(`, Date / Time:Tahoma4Memo517`, Database:TahomaMemo52y(`,User:TahomaM Memo53(,dd.mm.yy hh:mm[TIME]Tahoma Memo547,[DATABASE_NAME]Tahomag!Memo55(, [USER_NAME]Tahoma!Memo56y7`,Table:Tahomam"Memo577,Tahoma"Memo5x, Table:Tahoma1$Memo6YyQ,'[DialogForm.Query1."RDB$RELATION_NAME"]begin H if [COPY([DialogForm.Query1."RDB$RELATION_NAME"], 1, 4)] = 'RDB$' then  Font.Color := clRed  else  Font.Color := clWhite; endTahoma$Memo7, FieldsTahoma ;%Memo8, NameTahoma %Memo9, TypeTahoma F&Memo10V, DomainTahoma &Memo118,Not NullTahoma   (Memo12V,& [DialogForm.Query."RDB$FIELD_SOURCE"]begin F if [COPY([DialogForm.Query."RDB$FIELD_SOURCE"], 1, 4)] = 'RDB$' then  Font.Color := clRed  else  Font.Color := clBlack; endTahoma  TfrCheckBoxView(Check17,"[DialogForm.Query."RDB$NULL_FLAG"])Memo2, DescriptionTahoma  )Memo4,$[DialogForm.Query."RDB$DESCRIPTION"]Tahoma  TfrRichView(+Rich1(,(+{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fnil\fcharset0 Courier New;}{\f1\fnil\fcharset204{\*\fname Courier New;}Courier New CYR;}} {\colortbl ;\red0\green0\blue0;} \viewkind4\uc1\pard\cf1\lang1033\b\f0\fs20 [RtfText]\lang1049\b0\f1 \par }