主题:新手问关于insert的问题
liuwei424
[专家分:30] 发布于 2006-12-16 18:40:00
我用C#做一个数据库的程序,我要添加一些数据到数据库中,假设就两列,一列是id ,一列是文本内容,当然我用insert语句添加,但是我每次运行都是在上一次的末尾自动添加,也就是说我运行一次,数据库中的内容就复制一次。
我该怎么做呢,我曾试图把id改为主键,可是照样复制,就是id不断增加而以了。/
请问有什么办法可以我运行一次,如果是重复运行,数据库中的东西就不变。
非常感谢。[em1]
回复列表 (共5个回复)
沙发
菜鸭 [专家分:5120] 发布于 2006-12-16 22:20:00
意思不太清楚
每次运行时先delete,再insert
板凳
liuwei424 [专家分:30] 发布于 2006-12-17 10:11:00
楼上的朋友,那我仔细说说我要做的东西和实现的功能。
我的数据库很简单,里面就两个属性,一个是id,一个是sentence,text类型(SQL 2000)。
我点击“导入文章”按钮,选择我想要导入的文章,那么就把这篇文章中每一个句子算作一条数据记录写入数据库中。然后开始点击其他按钮处理这些句子,这个在这里就没必要详细说明了。
现在问题是,我要是再次点击“导入文章”按钮,选择刚才已经导入的文章,它就会再次写入数据库,因为我的id不是主键,id可以重复的,所以就相当于把我第一次写入数据库中的内容完全复制了一遍。
请问有什么办法能让我再次点击“导入文章”按钮时,可以避免这个问题。
非常感谢。
3 楼
菜鸭 [专家分:5120] 发布于 2006-12-17 17:13:00
你的程序中"导入文章"执行的代码估计就是这样设计的
你不要选已导入的文章,而选其他文章不就行了吗?
这和id能否重复没关系吧?
4 楼
kkzjk [专家分:440] 发布于 2006-12-18 12:29:00
在插入到数据库之前先查找数据库表中的id
如果有与要导入的文章的id相同就报错.没有就插入数据
5 楼
beijinghunansdj [专家分:190] 发布于 2007-01-22 09:55:00
1.select id from table
2.id+1
3.insert id+1 & sentence
我来回复