我正在作一个软件,其中用到了两个表:t_op(n_op_id,v_op_name,v_op_psw,n_op_level), t_level(n_level_id,v_level_name,is_enable,v_describe)
现在我想在一个t_op的管理frame中输入条件是t_op.n_op_id,t_op.v_op_name,t_op.v_op_psw,t_level.v_level_name
我尝试过两中办法:(1)由于我用的是delphi+ADO作的,于是双击ADOTable,在其Field属性中先add all fields,然后new field,新增一个显示字段,属性为:name(v_level_name),type(string),field type(Lookup)
,Key fields(t_op.n_op_level),DataSet(ADOTable,t_level),Lookup Keys(n_level_id),
Result Field(v_level_name)
(2)对数据库进行更改,创建一个视图vw_op(t_op.n_op_id,t_op.v_op_name,t_op.v_op_psw,t_level.v_level_name)
显示倒是完全没有什么问题,可是如果有修改或者新增操作时,就肯定会报错,比如:
field:'n_level_name' not found 或者说“无法将 NULL 值插入列n_level_id,表t_level该列不允许空值 insert 失败”,我新增/修改采用的是ADOTAable的方法:append/edit;
之后采用ADOTable的方法post保存.
请问上述问题应该如何解决?谢谢了!