当前位置: 代码迷 >> Java相关 >> 借这里的人气问下数据库ACCESS的问题
  详细解决方案

借这里的人气问下数据库ACCESS的问题

热度:102   发布时间:2006-12-03 18:43:45.0
借这里的人气问下数据库ACCESS的问题
我建里表里以ID为主键,而且是自动编号,当我删除最后一行(比如第5行),再在这里添加一行元组的时候,ID自动编号为(第6行,而不是占据刚才被删除的第5行),这样ID就不连贯了,怎么可以实现连贯啊??????????
搜索更多相关的解决方案: 数据库  ACCESS  人气  

----------------解决方案--------------------------------------------------------
应该语句没有错吧...

删除操作有问题吧 ...在删除操作后,用getRow() 看看现在数据库的表中的游标在第几行
----------------解决方案--------------------------------------------------------
那张表我只有三行...我在第4行添加元组后,又把这行删了,我继续在表上的第4行添加元组,但自动编号的ID不是4,而是5...我反复这么添加,删除...ID一直在增大..但是我只是在第4行做的操作啊
----------------解决方案--------------------------------------------------------

能把程序贴出来看看吗


----------------解决方案--------------------------------------------------------
/*
* 添加试题
*/
static void addQst(Qst q) throws ClassNotFoundException, SQLException{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:db";
Connection con=DriverManager.getConnection(url,"HP","aa");
Statement stmt=con.createStatement();
stmt.executeUpdate("INSERT INTO "
+q.getType()+
" (content,answer,difficulty,score,mytime) VALUES ('"+q.getContent()+"','"+q.getAnswer()+"','"+q.getDiff()+"',"+q.getScore()+","+q.getMyTime()+")");
con.close();
}

/*
* 删除试题
*/
static void deleteQst(Qst q) throws ClassNotFoundException, SQLException{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:db";
Connection con=DriverManager.getConnection(url,"HP","aa");
Statement stmt=con.createStatement();
stmt.executeUpdate("DELETE FROM "+q.getType()+" WHERE ID="+q.getId());
}
其中Qst是我建的一个类,存放Qst的一些属性...ID是自动编号的...

因为代码太多,我就只把删除和添加的部分放上来
----------------解决方案--------------------------------------------------------
明白了..........
ID做为主键,而且是自动编号的话,就算删除了...依然会照着刚才那个数持续增加的...
----------------解决方案--------------------------------------------------------
是的,这是非常正常的,呵呵
----------------解决方案--------------------------------------------------------

呵呵,这是数据库的基本的操作嘛!是不受删除影响的!


----------------解决方案--------------------------------------------------------
  相关解决方案