主从表问题(100分)

  • 主题发起人 megayama
  • 开始时间
M

megayama

Unregistered / Unconfirmed
GUEST, unregistred user!
我在做主从表的时候出现了如下问题,不知道怎么解决:
用两个TTable控件显示两个表
用主表的自增字段(id)与从表关联
这时候主表插入数据的时候就会出错(自增字段不能赋值),但如果不提取这个字段,
又无法和从表建立关系。这种问题怎么解决?
环境是delphi6+SQLserver
 
select id=@@identity
在存储过程里存储表
 
先将主表增加一条记录,然后取出其ID,写入从表.
 
请说的再详细一点
 
我在写主表的时候出错,提示我id字段不能为空
 
不知道能不能在插入数据的时候把id字段禁止掉,完成后再刷新记录
 
insert into (Maintable) value ()
Maintable refresh
select max(id) from Maintable
insert into (Subtable) id with max(id)
 
用TTable处理自增字段delphi好像是有问题(不知道是倥件的问题还是bde的问题),AdoTable没问题,可以的
 
CREATE PROCEDURE Insert_Po_Head
@VendorNO int,
@OperatorNO int,
@OrderDate datetime,
@CurrencyCode varchar(4),
@PrePay money,
@Rate real,
@TAX real,
@materielcategory nvarchar(50),
@TERMS nvarchar(50),
@Remark nvarchar(50)
AS
Insert into PurchaseOrder(VendorNO,OperatorNO,OrderDate,CurrencyCode,PrePay,Rate,TAX,TERMS,materielcategory,Remark)
values(@VendorNO,@OperatorNO,@OrderDate,@CurrencyCode,@PrePay,@Rate,@TAX,@TERMS,@materielcategory,@Remark)
Select @@IDENTITY As Retu
GO
最后用Select @@IDENTITY As Retu返回自动增加的单号
 
不要用自增量作为表的关联字段
 
顶部