📄 winform.pas.~1~
字号:
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'CategoryID', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('QuantityPerUnitOriginal',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
40, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'QuantityPerUnit', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitPriceOriginal',
Borland.Data.Common.BdpType.Decimal, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(19)), (Byte(0)),
19, 'UnitPrice', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsInStockOriginal',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsInStock', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsOnOrderOriginal',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsOnOrder', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ReorderLevelOriginal',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'ReorderLevel', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('DiscontinuedOriginal',
Borland.Data.Common.BdpType.Boolean, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Discontinued', System.Data.DataRowVersion.Original, nil));
Self.bdpDeleteCommand2.SchemaName := nil;
Self.bdpDeleteCommand2.Transaction := nil;
Self.bdpDeleteCommand2.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpInsertCommand2
//
Self.bdpInsertCommand2.CommandOptions := nil;
Self.bdpInsertCommand2.CommandText := 'INSERT INTO dbo.Products (ProductID, ProductName, SupplierID, CategoryID, Quant'+
'ityPerUnit, UnitPrice, UnitsInStock, UnitsOnOrder, ReorderLevel, Discontinued '+
') VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
Self.bdpInsertCommand2.CommandType := System.Data.CommandType.Text;
Self.bdpInsertCommand2.Connection := Self.BdpConnection1;
Self.bdpInsertCommand2.ParameterCount := (SmallInt(10));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ProductID',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'ProductID', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ProductName',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
80, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'ProductName', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('SupplierID',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'SupplierID', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('CategoryID',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'CategoryID', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('QuantityPerUnit',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
40, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'QuantityPerUnit', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitPrice',
Borland.Data.Common.BdpType.Decimal, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(19)), (Byte(0)),
19, 'UnitPrice', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsInStock',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsInStock', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsOnOrder',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsOnOrder', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ReorderLevel',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'ReorderLevel', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('Discontinued',
Borland.Data.Common.BdpType.Boolean, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Discontinued', System.Data.DataRowVersion.Current, nil));
Self.bdpInsertCommand2.SchemaName := nil;
Self.bdpInsertCommand2.Transaction := nil;
Self.bdpInsertCommand2.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpSelectCommand2
//
Self.bdpSelectCommand2.CommandOptions := nil;
Self.bdpSelectCommand2.CommandText := 'SELECT * FROM dbo.Products';
Self.bdpSelectCommand2.CommandType := System.Data.CommandType.Text;
Self.bdpSelectCommand2.Connection := Self.BdpConnection1;
Self.bdpSelectCommand2.ParameterCount := (SmallInt(0));
Self.bdpSelectCommand2.SchemaName := nil;
Self.bdpSelectCommand2.Transaction := nil;
Self.bdpSelectCommand2.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// bdpUpdateCommand2
//
Self.bdpUpdateCommand2.CommandOptions := nil;
Self.bdpUpdateCommand2.CommandText := 'UPDATE dbo.Products SET ProductID = ?, ProductName = ?, SupplierID = ?, Categor'+
'yID = ?, QuantityPerUnit = ?, UnitPrice = ?, UnitsInStock = ?, UnitsOnOrder = '+
'?, ReorderLevel = ?, Discontinued = ? WHERE ProductID = ? AND ProductName = ? '+
'AND SupplierID = ? AND CategoryID = ? AND QuantityPerUnit = ? AND UnitPrice = '+
'? AND UnitsInStock = ? AND UnitsOnOrder = ? AND ReorderLevel = ? AND Discontin'+
'ued = ?';
Self.bdpUpdateCommand2.CommandType := System.Data.CommandType.Text;
Self.bdpUpdateCommand2.Connection := Self.BdpConnection1;
Self.bdpUpdateCommand2.ParameterCount := (SmallInt(20));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ProductID',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'ProductID', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ProductName',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
80, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'ProductName', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('SupplierID',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'SupplierID', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('CategoryID',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'CategoryID', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('QuantityPerUnit',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
40, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'QuantityPerUnit', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitPrice',
Borland.Data.Common.BdpType.Decimal, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(19)), (Byte(0)),
19, 'UnitPrice', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsInStock',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsInStock', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsOnOrder',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsOnOrder', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ReorderLevel',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'ReorderLevel', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('Discontinued',
Borland.Data.Common.BdpType.Boolean, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Discontinued', System.Data.DataRowVersion.Current, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ProductIDOriginal',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'ProductID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ProductNameOriginal',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
80, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'ProductName', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('SupplierIDOriginal',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'SupplierID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('CategoryIDOriginal',
Borland.Data.Common.BdpType.Int32, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(10)), (Byte(0)),
10, 'CategoryID', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('QuantityPerUnitOriginal',
Borland.Data.Common.BdpType.&String, Borland.Data.Common.BdpType.Unknown,
40, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'QuantityPerUnit', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitPriceOriginal',
Borland.Data.Common.BdpType.Decimal, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(19)), (Byte(0)),
19, 'UnitPrice', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsInStockOriginal',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsInStock', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('UnitsOnOrderOriginal',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'UnitsOnOrder', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('ReorderLevelOriginal',
Borland.Data.Common.BdpType.Int16, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(5)), (Byte(0)),
5, 'ReorderLevel', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.Parameters.Add(Borland.Data.Common.BdpParameter.Create('DiscontinuedOriginal',
Borland.Data.Common.BdpType.Boolean, Borland.Data.Common.BdpType.Unknown,
0, System.Data.ParameterDirection.Input, False, (Byte(0)), (Byte(0)),
0, 'Discontinued', System.Data.DataRowVersion.Original, nil));
Self.bdpUpdateCommand2.SchemaName := nil;
Self.bdpUpdateCommand2.Transaction := nil;
Self.bdpUpdateCommand2.UpdatedRowSource := System.Data.UpdateRowSource.None;
//
// TWinForm
//
Self.AutoScaleBaseSize := System.Drawing.Size.Create(6, 14);
Self.ClientSize := System.Drawing.Size.Create(472, 381);
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.DataSet11)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.CategoryAdapter)).EndInit;
(System.ComponentModel.ISupportInitialize(Self.ProductAdapter)).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(DataSet11.Tables['Categories']);
ProductAdapter.Fill(Dataset11.Tables['Products']);
parentCol := Dataset11.Tables['Categories'].Columns['CategoryID'];
childCol := Dataset11.Tables['Products'].Columns['CategoryID'];
Relation :=DataRelation.Create('ProductCatagory',parentCol,childCol);
DataSet11.Relations.Add(Relation);
DataGrid1.DataSource:= DataSet11;
DataGrid1.DataMember := 'Categories';
DataGrid2.DataSource := DataSet11;
DataGrid2.DataMember := 'Categories.ProductCatagory';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -