添加数据库记录的问题

tele 2000-11-22 03:56:00
在sql数据库中设计了一个表,其中主键id设定为自动增长,此时在sql中无法也不用编辑此字段,系统会自动生成。但是在delphi中增加记录时(使用TTable控件),如果不对此字段赋值,则提示id必须要进行赋值,如果随便赋一个值,则记录无法添加,不知如何解决,急盼!!!
...全文
144 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tele 2001-02-14
  • 打赏
  • 举报
回复
我忘记给分了
Hank 2000-11-22
  • 打赏
  • 举报
回复
最好不要用自动递增字段,因为DELPHI与SQL-SERVER的连接有很多问题,最好由手工控制!
如果真的要解决,不允许该字段为空,不允许有默认值!因为自动递增字段本质上为数值型,默认是0,然后再由计算得到当前值。DELPHI此时会产生两条记录,一条是系统的,一条是DELPHI的,(除此字段外,其它一律相同)如果此时删除(未Post前),那么只能删除DELPHI产生的记录,系统产生的不会删除,可以移动,但是不能修改或删除,如果重新打开表,那么该记录自动消失!你可以在DBGrid中操作然后看到此壮观场面!
当然,如果你对该字段赋值,则一点问题没有!
老魏2006 2000-11-22
  • 打赏
  • 举报
回复
这是因为TTable不知道你这个字段可以自动取值,而且有是一个主键,不能是空,才会出现这种问题。我以前也遇到过。
nononono 2000-11-22
  • 打赏
  • 举报
回复
TTable换成TQuery也应该可以解决。
后台用SQL Server时,别去用TTable。
不信?只要你的表足够大(10000记录,十几个字段),你把你的程序同时执行10个副本试试。。。
zheng 2000-11-22
  • 打赏
  • 举报
回复
不能把id设为主键。

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧