📄 winform.pas.~8~
字号:
15, 'CategoryName', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand1.SchemaName := nil;
Self.bdpDeleteCommand1.Transaction := nil;
Self.bdpDeleteCommand1.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpSelectCommand1
//
Self.bdpSelectCommand1.CommandOptions := nil;
Self.bdpSelectCommand1.CommandText := 'SELECT CategoryID, CategoryName, De' +
'scription, Picture FROM dbo.Categories';
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 dbo.Categories SET CategoryI' +
'D = ?, CategoryName = ?, Description = ?, Picture = ? WHERE CategoryID = ' +
'? AND CategoryName = ?';
Self.bdpUpdateCommand1.CommandType := System.Data.CommandType.Text;
Self.bdpUpdateCommand1.Connection := Self.BdpConnection1;
Self.bdpUpdateCommand1.ParameterCount := (SmallInt(6));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ategoryID', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CategoryID', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ategoryName', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(15)), (Byte(0)),
15, 'CategoryName', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('D' +
'escription', Borland.Data.Common.BdpType.Blob, Borland.Data.Common.BdpType.stMemo,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Description', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('P' +
'icture', Borland.Data.Common.BdpType.Blob, Borland.Data.Common.BdpType.stBinary,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Picture', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ategoryIDOriginal', Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'CategoryID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.Parameters.Add(Borland.Data.Common.BdpParameter.Create('C' +
'ategoryNameOriginal', Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(15)), (Byte(0)),
15, 'CategoryName', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand1.SchemaName := nil;
Self.bdpUpdateCommand1.Transaction := nil;
Self.bdpUpdateCommand1.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// dataSet1
//
Self.dataSet1.DataSetName := 'NewDataSet';
Self.dataSet1.Locale := System.Globalization.CultureInfo.Create('zh-CN');
Self.dataSet1.Relations.AddRange(TArrayOfSystem_Data_DataRelation.Create(System.Data.DataRelation.Create('R' +
'elation1', 'Categories', 'Products', TArrayOfString.Create('Categ' +
'oryID'), TArrayOfString.Create('CategoryID'), False)));
Self.dataSet1.Tables.AddRange(TArrayOfSystem_Data_DataTable.Create(Self.DataTable1,
Self.DataTable2));
//
// DataTable1
//
Self.DataTable1.Columns.AddRange(TArrayOfSystem_Data_DataColumn.Create(Self.DataColumn1,
Self.DataColumn2, Self.DataColumn3, Self.DataColumn4));
Self.DataTable1.Constraints.AddRange(TArrayOfSystem_Data_Constraint.Create(System.Data.UniqueConstraint.Create('C' +
'onstraint1', TArrayOfString.Create('CategoryID'), True)));
Self.DataTable1.PrimaryKey := TArrayOfSystem_Data_DataColumn.Create(Self.DataColumn1);
Self.DataTable1.TableName := 'Categories';
//
// DataColumn1
//
Self.DataColumn1.AllowDBNull := False;
Self.DataColumn1.ColumnName := 'CategoryID';
Self.DataColumn1.DataType := TypeOf(Integer);
//
// DataColumn2
//
Self.DataColumn2.AllowDBNull := False;
Self.DataColumn2.ColumnName := 'CategoryName';
Self.DataColumn2.MaxLength := 15;
//
// DataColumn3
//
Self.DataColumn3.ColumnName := 'Description';
Self.DataColumn3.DataType := TypeOf(TArrayOfWideChar);
//
// DataColumn4
//
Self.DataColumn4.ColumnName := 'Picture';
Self.DataColumn4.DataType := TypeOf(TArrayOfByte);
//
// DataTable2
//
Self.DataTable2.Columns.AddRange(TArrayOfSystem_Data_DataColumn.Create(Self.DataColumn5,
Self.DataColumn6, Self.DataColumn7, Self.DataColumn8, Self.DataColumn9,
Self.DataColumn10, Self.DataColumn11, Self.DataColumn12, Self.DataColumn13,
Self.DataColumn14));
Self.DataTable2.Constraints.AddRange(TArrayOfSystem_Data_Constraint.Create(System.Data.UniqueConstraint.Create('C' +
'onstraint1', TArrayOfString.Create('ProductID'), True), System.Data.ForeignKeyConstraint.Create('R' +
'elation1', 'Categories', TArrayOfString.Create('CategoryID'), TArrayOfString.Create('C' +
'ategoryID'), System.Data.AcceptRejectRule.None, System.Data.Rule.Cascade,
System.Data.Rule.Cascade)));
Self.DataTable2.PrimaryKey := TArrayOfSystem_Data_DataColumn.Create(Self.DataColumn5);
Self.DataTable2.TableName := 'Products';
//
// DataColumn5
//
Self.DataColumn5.AllowDBNull := False;
Self.DataColumn5.ColumnName := 'ProductID';
Self.DataColumn5.DataType := TypeOf(Integer);
//
// DataColumn6
//
Self.DataColumn6.AllowDBNull := False;
Self.DataColumn6.ColumnName := 'ProductName';
Self.DataColumn6.MaxLength := 40;
//
// DataColumn7
//
Self.DataColumn7.ColumnName := 'SupplierID';
Self.DataColumn7.DataType := TypeOf(Integer);
//
// DataColumn8
//
Self.DataColumn8.ColumnName := 'CategoryID';
Self.DataColumn8.DataType := TypeOf(Integer);
//
// DataColumn9
//
Self.DataColumn9.ColumnName := 'QuantityPerUnit';
Self.DataColumn9.MaxLength := 20;
//
// DataColumn10
//
Self.DataColumn10.ColumnName := 'UnitPrice';
Self.DataColumn10.DataType := TypeOf(System.Decimal);
//
// DataColumn11
//
Self.DataColumn11.ColumnName := 'UnitsInStock';
Self.DataColumn11.DataType := TypeOf(SmallInt);
//
// DataColumn12
//
Self.DataColumn12.ColumnName := 'UnitsOnOrder';
Self.DataColumn12.DataType := TypeOf(SmallInt);
//
// DataColumn13
//
Self.DataColumn13.ColumnName := 'ReorderLevel';
Self.DataColumn13.DataType := TypeOf(SmallInt);
//
// DataColumn14
//
Self.DataColumn14.AllowDBNull := False;
Self.DataColumn14.ColumnName := 'Discontinued';
Self.DataColumn14.DataType := TypeOf(Boolean);
//
// TWinForm
//
Self.AutoScaleBaseSize := System.Drawing.Size.Create(5, 13);
Self.ClientSize := System.Drawing.Size.Create(688, 326);
Self.Controls.Add(Self.DataGrid2);
Self.Controls.Add(Self.DataGrid1);
Self.Name := 'TWinForm';
Self.Text := 'WinForm';
Include(Self.Load, Self.TWinForm_Load);
(System.ComponentModel.ISupportInitialize(Self.DataGrid1)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.DataGrid2)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.ProductAdapter)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.CategoryAdapter)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.dataSet1)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.DataTable1)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.DataTable2)).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.TWinForm_Load(sender: System.Object; e: System.EventArgs);
var
parentCol, ChildCol: DataColumn;
Relation: DataRelation;
begin
CategoryAdapter.Fill(DataSet1.Tables['Categories']);
ProductAdapter.Fill(Dataset1.Tables['Products']);
parentCol := Dataset1.Tables['Categories'].Columns['CategoryID'];
childCol := Dataset1.Tables['Products'].Columns['CategoryID'];
Relation :=DataRelation.Create('ProductCatagory',parentCol,childCol);
DataSet1.Relations.Add(Relation);
DataGrid1.DataSource:= DataSet1;
DataGrid1.DataMember := 'Categories';
DataGrid2.DataSource := DataSet1;
DataGrid2.DataMember := 'Categories.ProductCatagory';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -