📄 winform.pas.~2~
字号:
Self.Label3.Location := System.Drawing.Point.Create(27, 74);
Self.Label3.Name := 'Label3';
Self.Label3.Size := System.Drawing.Size.Create(83, 22);
Self.Label3.TabIndex := 11;
Self.Label3.Text := '班级';
//
// Label2
//
Self.Label2.Location := System.Drawing.Point.Create(27, 45);
Self.Label2.Name := 'Label2';
Self.Label2.Size := System.Drawing.Size.Create(83, 22);
Self.Label2.TabIndex := 10;
Self.Label2.Text := '姓名';
//
// Label1
//
Self.Label1.Location := System.Drawing.Point.Create(27, 15);
Self.Label1.Name := 'Label1';
Self.Label1.Size := System.Drawing.Size.Create(83, 21);
Self.Label1.TabIndex := 9;
Self.Label1.Text := '学号';
//
// BdpConnection1
//
Self.BdpConnection1.ConnectionOptions := 'transaction isolation=ReadCommit' +
'ted;blobsize=1024';
Self.BdpConnection1.ConnectionString := 'assembly=Borland.Data.Msacc,Versi' +
'on=2.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b;vendorclient=m' +
'sjet40.dll;database=C:\Documents and Settings\David\Desktop\Delphi 8\BDP\' +
'studentdb.mdb;provider=MSAccess;username=Admin;password=';
//
// BdpDataAdapter1
//
Self.BdpDataAdapter1.Active := False;
Self.BdpDataAdapter1.DataSet := Self.dataSet1;
Self.BdpDataAdapter1.DataTable := Self.DataTable1;
Self.BdpDataAdapter1.DeleteCommand := Self.bdpDeleteCommand1;
Self.BdpDataAdapter1.InsertCommand := Self.bdpInsertCommand1;
Self.BdpDataAdapter1.SelectCommand := Self.bdpSelectCommand1;
Self.BdpDataAdapter1.StartRecord := 0;
Self.BdpDataAdapter1.TableMappings.AddRange(TArrayOfSystem_Data_Common_DataTableMapping.Create(System.Data.Common.DataTableMapping.Create('T' +
'able', 'Score', TArrayOfSystem_Data_Common_DataColumnMapping.Create(System.Data.Common.DataColumnMapping.Create('I' +
'D', 'ID'), System.Data.Common.DataColumnMapping.Create('Stu' +
'dentID', 'StudentID'), System.Data.Common.DataColumnMapping.Create('S' +
'tudentName', 'StudentName'), System.Data.Common.DataColumnMapping.Create('C' +
'lass', 'Class'), System.Data.Common.DataColumnMapping.Create('C' +
'ourseID', 'CourseID'), System.Data.Common.DataColumnMapping.Create('C' +
'ourseName', 'CourseName'), System.Data.Common.DataColumnMapping.Create('S' +
'cores', 'Scores'), System.Data.Common.DataColumnMapping.Create('O' +
'ther', 'Other')))));
Self.BdpDataAdapter1.UpdateCommand := Self.bdpUpdateCommand1;
//
// bdpDeleteCommand1
//
Self.bdpDeleteCommand1.CommandOptions := nil;
Self.bdpDeleteCommand1.CommandText := 'DELETE FROM Score WHERE Class = ? A' +
'ND CourseID = ? AND CourseName = ? AND ID = ? AND Other = ? AND Scores = ' +
'? AND StudentID = ? AND StudentName = ?';
Self.bdpDeleteCommand1.CommandType := System.Data.CommandType.Text;
Self.bdpDeleteCommand1.Connection := Self.BdpConnection1;
Self.bdpDeleteCommand1.ParameterCount := (SmallInt(8));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'lassOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
20, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Class', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseIDOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
10, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseID', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseNameOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
30, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseName', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('I' +
'DOriginal', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'ID', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('O' +
'therOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
50, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Other', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'coresOriginal', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'Scores', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentIDOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
10, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentID', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentNameOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
10, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentName', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.SchemaName := nil;
Self.bdpDeleteCommand1.Transaction := nil;
Self.bdpDeleteCommand1.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpInsertCommand1
//
Self.bdpInsertCommand1.CommandOptions := nil;
Self.bdpInsertCommand1.CommandText := 'INSERT INTO Score (Class, CourseID,' +
' CourseName, Other, Scores, StudentID, StudentName ) VALUES ( ?, ?, ?, ?,' +
' ?, ?, ?)';
Self.bdpInsertCommand1.CommandType := System.Data.CommandType.Text;
Self.bdpInsertCommand1.Connection := Self.BdpConnection1;
Self.bdpInsertCommand1.ParameterCount := (SmallInt(7));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'lass', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
20, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Class', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseID', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
10, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseID', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseName', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
30, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseName', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('O' +
'ther', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
50, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Other', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'cores', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'Scores', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentID', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
10, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentID', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentName', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
10, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentName', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand1.SchemaName := nil;
Self.bdpInsertCommand1.Transaction := nil;
Self.bdpInsertCommand1.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpSelectCommand1
//
Self.bdpSelectCommand1.CommandOptions := nil;
Self.bdpSelectCommand1.CommandText := 'SELECT * FROM Score';
Self.bdpSelectCommand1.CommandType := System.Data.CommandType.Text;
Self.bdpSelectCommand1.Connection := Self.BdpConnection1;
Self.bdpSelectCommand1.ParameterCount := (SmallInt(0));
Self.bdpSelectCommand1.SchemaName := nil;
Self.bdpSelectCommand1.Transaction := nil;
Self.bdpSelectCommand1.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpUpdateCommand1
//
Self.bdpUpdateCommand1.CommandOptions := nil;
Self.bdpUpdateCommand1.CommandText := 'UPDATE Score SET Class = ?, CourseI' +
'D = ?, CourseName = ?, Scores = ?, StudentID = ?, StudentName = ? WHERE C' +
'lass = ? AND CourseID = ? AND CourseName = ? AND ID = ? AND Scores = ? AN' +
'D StudentID = ? AND StudentName = ?';
Self.bdpUpdateCommand1.CommandType := System.Data.CommandType.Text;
Self.bdpUpdateCommand1.Connection := Self.BdpConnection1;
Self.bdpUpdateCommand1.ParameterCount := (SmallInt(13));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'lass', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Class', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseID', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseID', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseName', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseName', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'cores', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'Scores', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentID', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentID', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentName', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentName', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'lassOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Class', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseIDOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ourseNameOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CourseName', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('I' +
'DOriginal', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'ID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'coresOriginal', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'Scores', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentIDOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('S' +
'tudentNameOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'StudentName', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.SchemaName := nil;
Self.bdpUpdateCommand1.Transaction := nil;
Self.bdpUpdateCommand1.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// TWinForm
//
Self.AutoScaleBaseSize := System.Drawing.Size.Create(5, 13);
Self.ClientSize := System.Drawing.Size.Create(433, 457);
Self.Controls.Add(Self.Panel1);
Self.Controls.Add(Self.DataGrid1);
Self.Name := 'TWinForm';
Self.Text := '编辑窗口';
(System.ComponentModel.ISupportInitialize(Self.DataGrid1)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.dataSet1)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.DataTable1)).EndInit;
Self.Panel1.ResumeLayout(False);
(System.ComponentModel.ISupportInitialize(Self.BdpDataAdapter1)).EndInit;
Self.ResumeLayout(False);
end;
{$ENDREGION}
procedure TWinForm.Dispose(Disposing: Boolean);
begin
if Disposing then
begin
if Components <> nil then
Components.Dispose();
end;
inherited Dispose(Disposing);
end;
constructor TWinForm.Create;
begin
inherited Create;
//
// Required for Windows Form Designer support
//
InitializeComponent;
//
// TODO: Add any constructor code after InitializeComponent call
//
end;
Procedure TWinForm.UpdateDataSource(ChangedDataset: DataSet);
begin
try
try
if Not(ChangedDataset=nil) then
begin
self.BdpConnection1.Open(); //打开连接
self.BdpDataAdapter1.Update(ChangedDataset.Tables[0]); //更新数据源
end;
except
on E: Exception do
begin
MessageBox.Show(E.Message);
raise e;
end;
end;
Finally
self.BdpConnection1.Close;
end;
end;
Procedure TWinForm.UpdateDataSet();
var
MyDataSet: DataSet;
begin
MyDataSet := DataSet.Create;
//停止当前的任何编辑
Self.BindingContext[DataSet1,'Score'].EndCurrentEdit;
MyDataSet :=Dataset1.GetChanges;
if Not(MyDataSet=nil) then
begin
try
Self.UpdateDataSource(MyDataSet);
DataSet1.AcceptChanges();
except
on E: Exception do
begin
MessageBox.Show(E.Message);
raise e;
end;
end; //end try
end; //end if
end;
procedure TWinForm.TextBox1_TextChanged(sender: System.Object; e: System.EventArgs);
begin
end;
procedure TWinForm.InserBtn_Click(sender: System.Object; e: System.EventArgs);
begin
Try
Self.BindingContext[DataSet1,'Score'].EndCurrentEdit;
Self.BindingContext[DataSet1,'Score'].AddNew;
Except
on E: Exception do
MessageBox.Show(E.Message);
end;
end;
procedure TWinForm.DeleteBtn_Click(sender: System.Object; e: System.EventArgs);
var
pos : Integer;
begin
pos := Self.BindingContext[DataSet1, 'Score'].Position;
if (Self.BindingContext[DataSet1, 'Score'].Count>0) then
Self.BindingContext[DataSet1, 'Score'].RemoveAt(pos);
end;
procedure TWinForm.SelectBtn_Click(sender: System.Object; e: System.EventArgs);
begin
NewWinForm := TWinForm2.Create;
NewWinForm.Show;
end;
procedure TWinForm.UpdateBtn_Click(sender: System.Object; e: System.EventArgs);
begin
Self.UpdateDataSet();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -