16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"RE:担当者メンテ開発記"
この発言は #01252 ぺけでび さんの担当者メンテ開発記 に対するコメントです
この発言に対し以下のコメントが寄せられています
#01254 ぺけでび さん RE:担当者メンテ開発記
以下が、シコシコDOS のエディターで書いたソースです。
FILE:MkTANTOU.DPR
//
// TANTOU.DBF を作成する
//
program MkTANTOU;
{$APPTYPE CONSOLE}
uses
SysUtils, // ここではなくても良いみたい
Forms, // ないと Application 指定でエラー
Db, // ないと ftString等が未定義で使えない
DBTables; // TTableを使うために必要
var
Table1: TTable; // TTable型のTable1という名前の変数を定義
begin
Table1 := TTable.Create(Application); // インスタンスを作成する
// つまり変数を初期化して使用化にするということかな
Table1.TableType := ttDBase; // テーブルのタイプはdBASE
Table1.TableName := 'TANTOU.DBF'; // テーブル名の指定
Table1.FieldDefs.Clear; // フィールド指定の準備
Table1.FieldDefs.Add('TAN_CD', ftString, 2, False); // 1番目のフィールド
// フィールド名はTAN_CDで、文字型で、長さは2桁
Table1.FieldDefs.Add('TAN_NAME', ftString, 20, False); // 2番目のフィールド
// フィールド名はTAN_NAMEで、文字型で、長さは20桁
Table1.CreateTable; // ここで実際にテーブルが作成される
try // この下でエラーが発生した時はexcept文の下を実行
Table1.AddIndex('CODE', 'TAN_CD', [ixExpression]); // 実際にインデックスが
作成される
// タグ名はCODEで、フィールドTAN_CDの一次キー
except
on EDatabaseError do Writeln('インデックスを作成出来ません'); // エラーでなければ実行されない
end;
Table1.Free; // もう使わないので開放する
// ひょっとしたらDelphiが自動的に開放してくれているのかもしれないが、
// 自前でやっといた方が好ましいのではないか?
Writeln('終了しました'); // コンソールに表示
end.
いまでこそ、するするコードが出てきますが、usesの指定等どー
すれば目的を達成出来るのか、ヘルプやログを見たり、エラーが出
ては悩み違うコードを試したりと、辛い時期が続きました。
これを実行すると、TANTOU.DBFとTANDOU.MDXが作成されます。
それとBDE のデェフォルトは、dBASE のレベルは7 になっています
が、こちらでは5 に落としています。 7 では試していません。
Original document by ぺけでび 氏 ID:(YQJ03146)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|