回 帖 发 新 帖 刷新版面

主题:新手问关于insert的问题

我用C#做一个数据库的程序,我要添加一些数据到数据库中,假设就两列,一列是id ,一列是文本内容,当然我用insert语句添加,但是我每次运行都是在上一次的末尾自动添加,也就是说我运行一次,数据库中的内容就复制一次。
我该怎么做呢,我曾试图把id改为主键,可是照样复制,就是id不断增加而以了。/
请问有什么办法可以我运行一次,如果是重复运行,数据库中的东西就不变。
非常感谢。[em1]

回复列表 (共5个回复)

沙发

意思不太清楚
每次运行时先delete,再insert

板凳

楼上的朋友,那我仔细说说我要做的东西和实现的功能。
我的数据库很简单,里面就两个属性,一个是id,一个是sentence,text类型(SQL 2000)。
我点击“导入文章”按钮,选择我想要导入的文章,那么就把这篇文章中每一个句子算作一条数据记录写入数据库中。然后开始点击其他按钮处理这些句子,这个在这里就没必要详细说明了。
现在问题是,我要是再次点击“导入文章”按钮,选择刚才已经导入的文章,它就会再次写入数据库,因为我的id不是主键,id可以重复的,所以就相当于把我第一次写入数据库中的内容完全复制了一遍。
请问有什么办法能让我再次点击“导入文章”按钮时,可以避免这个问题。
非常感谢。

3 楼

你的程序中"导入文章"执行的代码估计就是这样设计的
你不要选已导入的文章,而选其他文章不就行了吗?
这和id能否重复没关系吧?

4 楼

在插入到数据库之前先查找数据库表中的id
如果有与要导入的文章的id相同就报错.没有就插入数据

5 楼

1.select id from table
2.id+1
3.insert id+1 & sentence

我来回复

您尚未登录,请登录后再回复。点此登录或注册