以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]sqlserver 受PRIMARY KEY 约束后,在FT中插入不正常 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=39313) |
||||
-- 作者:pengjiam -- 发布时间:2013/8/21 14:17:00 -- [求助]sqlserver 受PRIMARY KEY 约束后,在FT中插入不正常 1、在SQL SERVER 中的表中部分字段做了PRIMARY KEY 约束,以保障唯一标识数据库表中的每条记录; 2、我在FT的窗口中调用该表,要对表进行插入操作,一般情况下受primary key约束的字段需要系统提供; 3、可提供的值系统根本不认 怎么办?
顺便提供案例,请用其中的窗口3进行测试
|
||||
-- 作者:Bin -- 发布时间:2013/8/21 14:19:00 -- primary key 只能是_Identify列 不能是其他 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2013/8/21 14:26:00 -- 建议主键用自动增量列,名称可以是_Identify,可以是其他 [此贴子已经被作者于2013-8-21 14:26:37编辑过]
|
||||
-- 作者:shiqiso -- 发布时间:2013/8/21 16:00:00 -- 原来如此 |
||||
-- 作者:pengjiam -- 发布时间:2013/8/21 16:13:00 -- 我用的SQL SERVER 2000版的数据库。在定义表时已对表中的关键字段进行了限制,有的表关键字段可以只有一个,用于唯一区别记录,实现不容许重复的目的。有的表可能需要2个或以上字段来限制记录的唯一性。使用_Identify不能达到目的,特别是多个字段确定记录的唯一性时。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2013/8/21 16:18:00 -- 去掉这些多字段的唯一约束,在foxtable中用代码来控制重复输入吧:
http://www.foxtable.com/help/topics/2481.htm
|
||||
-- 作者:pengjiam -- 发布时间:2013/8/21 16:27:00 -- 我想该问题应该好解决,毕竟我是在FT中进行插入行。或FT中addnew()能带参数也可以,参数包括主要字段及其内容,与sql中insert into类似。 |
||||
-- 作者:pengjiam -- 发布时间:2013/8/24 5:51:00 -- 使用DataRowAdding事件不能全部解决问题
1、 表中约束字段有2个:单号、项次 2、 通过专门的COMOBOX控件来改变单号的值,第一进入该控件后在表中新增一行,并把comobox的值付给表中的单号;(见程序) 3、 可以通过↓键新增行; 问题是:首次进入comobox控件后所选的值有误的情况下,再重选后,不能改变表中的“单号”( ValueChanged中replacefor不起作用),如在表中新增了几行后,再次进入comobox控件去选中新单号后,又可以改变表中的单号了(ValueChanged中replacefor又起一定作用,但不稳定)。
|