我在做一个文章连载有两个表,表a 和 表b 表a中有 表b中有
id 标题 id bookid 章节 标题 内容
1 啊啊啊 1 1 第一章 啊啊啊 ***
2 呵呵呵 2 1 第二章 啊啊啊 *** .......... 3 1 第三章 啊啊啊 ***
37 哈哈哈 ................
66 37 第一章 哈哈哈 ***
67 37 第二章 哈哈哈 ***如何将表a的id与表b的bookid联系起来?希望大家帮帮忙,急呀~
id 标题 id bookid 章节 标题 内容
1 啊啊啊 1 1 第一章 啊啊啊 ***
2 呵呵呵 2 1 第二章 啊啊啊 *** .......... 3 1 第三章 啊啊啊 ***
37 哈哈哈 ................
66 37 第一章 哈哈哈 ***
67 37 第二章 哈哈哈 ***如何将表a的id与表b的bookid联系起来?希望大家帮帮忙,急呀~
如果文章内容和标题不是一起插入,那么在插入标题后,同样可以通过程序参数把表a的id连同文章内容一起插到表b
我是标题和内容分开插入,先将标题插入表a 然后将内容插入表b
表a的id是自动编号,插入一个标题,比如id=5,想让内容和这个标题联系起来,得有一个连接的方式,所以我在表b中建立了一个bookid字段,怎么才能让bookid=5呢 ?
RS.update
BOOKID=RS("ID")
在B表添加记录时,将BOOKID作为参数添加进去
问题就在这里,就是不知怎么把表A的自动编号插入进去~
问题就在这里,就是不知如何把表a的自动编号插入到表b的bookid里
把表A写入以后同时返回自动生成的ID,然后把这ID插入表B就行了,!
怎么把id 插入表B?代码怎么写?谢谢~
INSERT INTO b ( bookid, ..... ) VALUES ( @@Identity, ...... );两条语句用一个SqlCommand提交。
是我表达的不对
我是标题和内容分开插入,先将标题插入表a 然后将内容插入表b
表a的id是自动编号,插入一个标题,比如id=5,想让内容和这个标题联系起来,得有一个连接的方式,所以我在表b中建立了一个bookid字段,怎么才能让bookid=5呢 ?
下面三个步骤:
1、先插入表A(insert into a() values())
2、然后执行sql(select max(id) as max_id from a),这样取出最大记录数
3、最后插入表B(insert into b() values())
INSERT INTO b ( bookid, ..... ) VALUES ( @@Identity, ...... );如果你的表a的id是自动增长的,那么,在对表a进行INSERT操作后,@@Identity就会是你最新插入表a的记录的id。
但是,这两条语句要一起发送才有用。除了使用@@Identity,SELECT MAX(ID)也是一个好办法。但是为了避免并发冲突,你要把两个插入操作放在同一个事务中执行。