gpt4 book ai didi

mysql - 写入数据库时​​在不同时间插入记录的不同部分

转载 作者:行者123 更新时间:2023-11-29 11:49:29 25 4
gpt4 key购买 nike

我的问题是,我在不同时间将数据写入同一记录中的单独字段,当我将数据添加到同一记录中的第二个设置字段时,我收到一条错误消息:

You must enter a value in the 'tblWorkoutDetails.Username' field

尽管已在上一个语句中输入了该数据。

此引用的表称为 tblWorkoutDetails 并具有以下字段:

  • 锻炼ID
  • 用户名
  • 锻炼日期
  • 重量
  • 腰围

WorkoutID 和用户名组成一个复合键。该表与另一个表相关,我也以相同的方式向该表写入数据。

我正在使用以下代码将记录的第一部分(组成复合键的字段)写入数据库:

adotblWorkoutDetails['Username'] := Username;
adotblWorkoutDetails['WorkoutID'] := CurrentWorkout+1;
adotblWorkoutDetails.Post;
adotblWorkoutDetails.Refresh;

分配给字段的值只是变量,并且执行得很好。

填充该记录中其余字段的第二条语句如下:

adotblWorkoutDetails['WorkoutDate'] := Date;
adotblWorkoutDetails['Weight'] := Weight;
adotblWorkoutDetails['Waist'] := Waist;
adotblWorkoutDetails.Post;
adotblWorkoutDetails.Refresh;

程序在 adotblWorkoutDetails.Post 处因上述错误而中断。在尝试解决此问题时,我尝试重新分配必填字段,但是收到错误消息,提示我输入了重复的数据。此外,当我在第一次填写记录中的每个字段时(使用示例数据填写第二个数据条目的“保留”字段),代码可以完美执行,写入另一个表的代码也可以完美执行。

我不知道如何解决这个问题。如果您需要更多信息/代码屏幕截图,请询问。

这段代码给了我“您必须在字段中输入一个值...”错误:

image

取消注释这两行会出现重复数据错误:

image

最佳答案

我怀疑发生的情况是您的第二个操作错误地执行了另一个插入而不是编辑,并且您收到的异常是< em>UserName 字段的 Required 属性设置为 True

这按照您描述的方式工作:

adotblWorkoutDetails.Insert;
adotblWorkoutDetails['Username'] := Username;
adotblWorkoutDetails['WorkoutID'] := CurrentWorkout+1;
adotblWorkoutDetails.Post;
//adotblWorkoutDetails.Refresh; // Refresh is not required

adotblWorkoutDetails.Insert;
adotblWorkoutDetails['WorkoutDate'] := Date;
adotblWorkoutDetails['Weight'] := Weight;
adotblWorkoutDetails['Waist'] := Waist;
adotblWorkoutDetails.Post;
// adotblWorkoutDetails.Refresh; // Again, not required

你应该做什么:

adotblWorkoutDetails.Insert;
adotblWorkoutDetails['Username'] := Username;
adotblWorkoutDetails['WorkoutID'] := CurrentWorkout+1;
adotblWorkoutDetails.Post;

// Locate the correct record using Locate or FindKey first, then
adotblWorkoutDetails.Edit;
adotblWorkoutDetails['WorkoutDate'] := Date;
adotblWorkoutDetails['Weight'] := Weight;
adotblWorkoutDetails['Waist'] := Waist;
adotblWorkoutDetails.Post;

(顺便说一句,供将来引用,切勿将任何代码作为图像发布;如果您需要发布代码,请复制并粘贴代码本身。 Here's a list 的原因't。

关于mysql - 写入数据库时​​在不同时间插入记录的不同部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34375895/

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