2 cshmicky cshmicky 于 2017.01.11 03:52 提问

一个数据库问题我在控件上显示

1、我现在有两张表
一张是主表,信息
c是外键关联第二张表
a b c
1 aa 1
2 bb 2

第二张表 位置
a b
1 A1
2 A2
我在控件上显示的时候是
textbox1是名字
textBox2是位置
那我输入cc A2 以后
怎么在表一添加为,,
a b c
3 cc 2

2个回答

bjjoy2009
bjjoy2009   2017.01.11 09:19

如果设置了a字段是自增的话,就比较容易
insert into 主表 set b='cc',c=(select a from 二表 where b='A2')

如果没有自增的话,比较麻烦
insert into 主表 set a=(select max(a)+1 from 主表), b='cc',c=(select a from 二表 where b='A2')

如果还要判断cc是否在主表里边,那最好就写2条吧,还需要确定主表c字段可以为null,因为A2不一定在二表

xionglangs
xionglangs   Rxr 2017.01.13 11:40

首先确定你的外键表是否有你现在添加的值,也就是你这里的位置表中是否有你需要添加的位置,如果没有,则先添加位置信息,如果有,则直接添加名字表信息,这个直接在数据库中操作就是查询,在insert,但如果你想在代码中实现,1、建议你最好配置级联,这样,如果外键没有,添加时直接报错,如果没有级联,在类中也没有写对应关系,那么添加不会报错,查询的时候可能会报错。2、最好绑定一个事物,统一处理,如果一步失败,自动回滚。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!