gpt4 book ai didi

database - 使用 ACCESS 和 ADO 连接的 Delphi 数据库连接

转载 作者:搜寻专家 更新时间:2023-10-30 23:04:08 25 4
gpt4 key购买 nike

好吧,基本上我已经在我的计算项目上工作了一段时间,我已经完成了 90% 的工作,但是我在使用 Delphi 时遇到了一个问题,据说我的数据库没有连接/有连接问题但是我已经尝试将信息写入屏幕,这向我展示了我正在寻找的元素实际上是在被捡起的地方所以失败是在将元素输入数据库时​​。然而,这不应该发生,因为系统已经从该表中显示了数据库信息,并且用户可以从程序中的数据库表中物理地选择内容,但是当试图将信息存储回数据库时,它只是破坏了。我和我的计算机老师无法解决这个问题,我们将不胜感激。

问题出现在新订单页面上。如果您更愿意查看系统,那么您可以从这里下载它 https://drive.google.com/folderview?id=0B_iRfwwM9QpHVXJnSkx4U1FjMlk&usp=sharing

procedure Tform1.btnSaveClick(Sender: TObject);
var orderID:integer;
count:integer;
begin
try
//save into the order table first
tblOrder.Open;
tblOrder.Insert;
tblOrder.FieldByName('CustomerID').value:= strtoint(cboCustomer.Text);
tblOrder.Close;
tblOrder.Open;
tblOrder.Last;
orderID:=tblOrder.FieldByName('OrderID').Value;
showmessage(inttostr(orderID));


for count := 1 to nextFree-1 do
begin
if itemOrdered[count,1]<>0 then
begin
tblOrderLine.Open;
tblOrderLine.AppendRecord([orderID, itemOrdered[count,1],itemOrdered[count,2]]);
end;
end;
showmessage('The order has been saved');
except
showmessage('There was a problem connecting to the database');
end;
end;

最佳答案

你做的太多了打开,做点什么,关闭,打开。不要那样做,因为几乎可以肯定这就是问题的原因。如果数据已经显示,则数据库已经打开。如果您希望它继续显示,数据库必须保持打开状态。

我还删除了您的try..except。如果你愿意,你可以把它放回去;我个人喜欢允许异常发生,这样我就可以从异常消息中找出数据库操作失败的原因,而不是隐藏它并且不知道是什么原因导致它不起作用。

procedure Tform1.btnSaveClick(Sender: TObject);
var
orderID: integer;
count: integer;
begin
//save into the order table first
tblOrder.Insert;
tblOrder.FieldByName('CustomerID').value:= strtoint(cboCustomer.Text);
tblOrder.Post;
orderID:=tblOrder.FieldByName('OrderID').Value;
showmessage(inttostr(orderID));

for count := 1 to nextFree-1 do
begin
if itemOrdered[count, 1] <> 0 then
begin
tblOrderLine.AppendRecord([orderID, itemOrdered[count,1],itemOrdered[count,2]]);
tblOrderLine.Post;
end;
end;
showmessage('The order has been saved');
end;

关于database - 使用 ACCESS 和 ADO 连接的 Delphi 数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28832724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com