목차
1.화일시스템
1.1 화일
1.2 화일시스템
1.3 화일시스템의 문제점
2.데이터베이스시스템
2.1 데이터베이스 정의
2.2 데이터베이스 특징
2.3 데이터베이스 스키마
2.4 데이터베이스 관리시스템
3.화일시스템과 데이터베이스시스템의 응용프로그램
1.1 화일
1.2 화일시스템
1.3 화일시스템의 문제점
2.데이터베이스시스템
2.1 데이터베이스 정의
2.2 데이터베이스 특징
2.3 데이터베이스 스키마
2.4 데이터베이스 관리시스템
3.화일시스템과 데이터베이스시스템의 응용프로그램
본문내용
< 0) or (iMath > 100) then
begin
ShowMessage('각 점수는 0~100 사이로 입력해 주세요.');
exit;
end;
if AppendDBRecord(strName,strSex,iKor,iEng,iMath) = false then
ShowMessage('데이터를 추가할 수 없습니다.');
NameEdit.Clear;
SexComboBox.ItemIndex := 0;
KorEdit.Clear;
EngEdit.Clear;
MathEdit.Clear;
NameEdit.SetFocus;
end;
procedure TForm1.TableAfterPost(DataSet: TDataSet);
begin
DbiSaveChanges(Table.Handle);
end;
procedure TForm1.OutputButtonClick(Sender: TObject);
var
strQuery : String;
iCount : Integer;
begin
strQuery := 'SELECT * FROM '+m_strDBFileName+' ORDER BY Sum2 desc';
Table.Close;
With Query do
begin
//DatabaseName := m_strDirectory;
//TableName := m_strDBFileName;
//TableType := ttParad8ox;
Close;
with SQL do
begin
Clear;
Add(strQuery);
end;
execSQL;
end;
With Query do
begin
//DatabaseName := m_strDirectory;
Open;
First;
Unit2.Form2.StringGrid.RowCount := RecordCount+1;
iCount := 1;
while not EOF do
begin
Unit2.Form2.SetStringGrid(iCount,
FieldByName('Name').AsString,
FieldByName('Sex').AsString,
FieldByName('Kor').AsInteger,
FieldByName('Eng').AsInteger,
FieldByName('Math').AsInteger,
FieldByName('Sum2').AsInteger,
FieldByName('Avg').AsInteger);
Next;
iCount := iCount+1;
end;
end;
Unit2.Form2.Show;
end;
end.
// <그림 4>의Form2는 입력된 내용을 DB에 저장하고 DB에 저장되어 있는 내용을 화면에 출력하는 폼이다. Form2에 유닛화일은 unit2이다. Form2를 더블클릭하여 아래와 같은 소스코드를 작성해야 한다.
<그림 4> <그림 3>을 수행한 결과를 화면에 출력하기 위한 폼
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids;
type
TForm2 = class(TForm)
StringGrid: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure StringGridClick(Sender: TObject);
private
{ Private declarations }
public
procedure SetStringGrid(var iIndex : Integer; strName : String; strSex : String;
iKor : Integer; iEng : Integer; iMath : Integer;
iSum : Integer; iAvg : Integer);
end;
var
Form2: TForm2;
implementation
{$R *.DFM}
procedure TForm2.SetStringGrid(var iIndex : Integer; strName : String; strSex : String;
iKor : Integer; iEng : Integer; iMath : Integer;
iSum : Integer; iAvg : Integer);
begin
StringGrid.Cells[0,iIndex] := strName;
StringGrid.Cells[1,iIndex] := strSex;
StringGrid.Cells[2,iIndex] := IntToStr(iKor);
StringGrid.Cells[3,iIndex] := IntToStr(iEng);
StringGrid.Cells[4,iIndex] := IntToStr(iMath);
StringGrid.Cells[5,iIndex] := IntToStr(iSum);
StringGrid.Cells[6,iIndex] := IntToStr(iAvg);
StringGrid.Cells[7,iIndex] := IntToStr(iIndex);
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
StringGrid.ColCount := 8;
StringGrid.RowCount := 2;
StringGrid.Cells[0,0] := '이름';
StringGrid.Cells[1,0] := '성별';
StringGrid.Cells[2,0] := '국어';
StringGrid.Cells[3,0] := '영어';
StringGrid.Cells[4,0] := '수학';
StringGrid.Cells[5,0] := '총점';
StringGrid.Cells[6,0] := '평균';
StringGrid.Cells[7,0] := '순위';
end;
procedure TForm2.StringGridClick(Sender: TObject);
begin
end;
end.
// <그림 5>는 <그림3>의 실행결과로서 입력버튼을 누르면 연속해서 데이터를 입력할 수 있고 입력된 데이터는 모두 DB에 저장되며 출력 버튼을 누르면 <그림 6>을 볼 수 있다
<그림 5> <그림 3>의 수행결과
<그림 6>은 입력한 데이터의 총점과 평균을 구하고 순위를 계산해서 화면에 보여 준다
begin
ShowMessage('각 점수는 0~100 사이로 입력해 주세요.');
exit;
end;
if AppendDBRecord(strName,strSex,iKor,iEng,iMath) = false then
ShowMessage('데이터를 추가할 수 없습니다.');
NameEdit.Clear;
SexComboBox.ItemIndex := 0;
KorEdit.Clear;
EngEdit.Clear;
MathEdit.Clear;
NameEdit.SetFocus;
end;
procedure TForm1.TableAfterPost(DataSet: TDataSet);
begin
DbiSaveChanges(Table.Handle);
end;
procedure TForm1.OutputButtonClick(Sender: TObject);
var
strQuery : String;
iCount : Integer;
begin
strQuery := 'SELECT * FROM '+m_strDBFileName+' ORDER BY Sum2 desc';
Table.Close;
With Query do
begin
//DatabaseName := m_strDirectory;
//TableName := m_strDBFileName;
//TableType := ttParad8ox;
Close;
with SQL do
begin
Clear;
Add(strQuery);
end;
execSQL;
end;
With Query do
begin
//DatabaseName := m_strDirectory;
Open;
First;
Unit2.Form2.StringGrid.RowCount := RecordCount+1;
iCount := 1;
while not EOF do
begin
Unit2.Form2.SetStringGrid(iCount,
FieldByName('Name').AsString,
FieldByName('Sex').AsString,
FieldByName('Kor').AsInteger,
FieldByName('Eng').AsInteger,
FieldByName('Math').AsInteger,
FieldByName('Sum2').AsInteger,
FieldByName('Avg').AsInteger);
Next;
iCount := iCount+1;
end;
end;
Unit2.Form2.Show;
end;
end.
// <그림 4>의Form2는 입력된 내용을 DB에 저장하고 DB에 저장되어 있는 내용을 화면에 출력하는 폼이다. Form2에 유닛화일은 unit2이다. Form2를 더블클릭하여 아래와 같은 소스코드를 작성해야 한다.
<그림 4> <그림 3>을 수행한 결과를 화면에 출력하기 위한 폼
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids;
type
TForm2 = class(TForm)
StringGrid: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure StringGridClick(Sender: TObject);
private
{ Private declarations }
public
procedure SetStringGrid(var iIndex : Integer; strName : String; strSex : String;
iKor : Integer; iEng : Integer; iMath : Integer;
iSum : Integer; iAvg : Integer);
end;
var
Form2: TForm2;
implementation
{$R *.DFM}
procedure TForm2.SetStringGrid(var iIndex : Integer; strName : String; strSex : String;
iKor : Integer; iEng : Integer; iMath : Integer;
iSum : Integer; iAvg : Integer);
begin
StringGrid.Cells[0,iIndex] := strName;
StringGrid.Cells[1,iIndex] := strSex;
StringGrid.Cells[2,iIndex] := IntToStr(iKor);
StringGrid.Cells[3,iIndex] := IntToStr(iEng);
StringGrid.Cells[4,iIndex] := IntToStr(iMath);
StringGrid.Cells[5,iIndex] := IntToStr(iSum);
StringGrid.Cells[6,iIndex] := IntToStr(iAvg);
StringGrid.Cells[7,iIndex] := IntToStr(iIndex);
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
StringGrid.ColCount := 8;
StringGrid.RowCount := 2;
StringGrid.Cells[0,0] := '이름';
StringGrid.Cells[1,0] := '성별';
StringGrid.Cells[2,0] := '국어';
StringGrid.Cells[3,0] := '영어';
StringGrid.Cells[4,0] := '수학';
StringGrid.Cells[5,0] := '총점';
StringGrid.Cells[6,0] := '평균';
StringGrid.Cells[7,0] := '순위';
end;
procedure TForm2.StringGridClick(Sender: TObject);
begin
end;
end.
// <그림 5>는 <그림3>의 실행결과로서 입력버튼을 누르면 연속해서 데이터를 입력할 수 있고 입력된 데이터는 모두 DB에 저장되며 출력 버튼을 누르면 <그림 6>을 볼 수 있다
<그림 5> <그림 3>의 수행결과
<그림 6>은 입력한 데이터의 총점과 평균을 구하고 순위를 계산해서 화면에 보여 준다
추천자료
[교육행정][교육행정정보시스템][NEIS]교육행정의 정의, 교육행정의 원리, 교육행정의 성격, ...
[방화벽][방화벽시스템][방화벽 해킹][방화벽시스템 해킹][보안][해커][해킹]방화벽(방화벽시...
[방화벽][방화벽시스템][보안][보안시스템][해커][해킹]방화벽(방화벽시스템)의 개념, 방화벽...
[방화벽][방화벽시스템][방화벽시스템 주요기능][방화벽시스템 유형][방화벽시스템구축][보안...
[보안][보안시스템][해킹][보안의 등급][보안의 위협][보안시스템의 시장 현황][보안시스템의...
[실시간][시스템][분할][위성항법보정][원격강의]실시간 시스템 설계를 위한 HW/SW 분할시스...
기업 경영환경의 변화에 따라 정보시스템의 중요성이 강조되고 있다. 다양한 정보시스템 중 ...
[객체지향][시스템공학][병렬시스템][방법론][언어][UML][시뮬레이션][객체]객체지향과 시스...
지능형 교통체계(지능형 교통시스템)의 정의와 필요성, 지능형 교통체계(지능형 교통시스템)...
[린생산방식][린생산시스템][린생산][생산][시스템]린생산방식(린생산시스템)의 탄생, 린생산...
[위험][위험관리시스템][리스크관리시스템][위험가중치][위험분석][위험중립평가][리스크][위...
[MAS][관리회계시스템][관리회계][회계]MAS(관리회계시스템)의 역사, MAS(관리회계시스템)의 ...
[AIS][회계정보시스템][회계정보][회계][정보][정보시스템]AIS(회계정보시스템)의 의의, AIS(...
기업자원계획(전사적 자원관리 시스템, ERP) 기능, 기업자원계획(전사적 자원관리 시스템, ER...