为什么我清空不了这个表的所有记录???????????????????????
我用的是VS2005 表名为:STAR
用 delete from star 能正确执行
但我想删除后编号仍然从1开始 . 我用 truncate table star 执行 出现错误
无效的 SQL语句;期待 'DELETE '、 'INSERT '、 'PROCEDURE '、 'SELECT '、或 'UPDATE '。
下面是我执行的方法
/// <summary>
/// 只执行SQL命令,无返回
/// </summary>
/// <param name= "strSQLpro "> SQL语句 </param>
public int ExecuteSql(string strSQL)
{
con = new OleDbConnection(connectionString);
cmd = new OleDbCommand(strSQL, con);
try
{
con.Open();
int i = cmd.ExecuteNonQuery();
return i;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
[解决办法]
肯定用了自加了吧,server 2000就这样,他会一直加比如
1
2
3
你把第3行删了,成
1
2
,再insert一行,那么就成
1
2
4
如果你想要
1
2
3
这样的结果,就不要设成自加
手动insert段
[解决办法]
楼上说的完全正确
MS SQL不支持truncate ,orcale里面倒是常用
[解决办法]
呵呵
lz太大意了哦
顶一下
[解决办法]
anncesky() ( ) 信誉:100 Blog 加为好友 2007-07-14 10:41:54 得分: 0
肯定用了自加了吧,server 2000就这样,他会一直加比如
1
2
3
你把第3行删了,成
1
2
,再insert一行,那么就成
1
2
4
如果你想要
1
2
3
这样的结果,就不要设成自加
手动insert段
-----------------------
如果是自增列,刪除的時候會出現這種情況。
但是,你沒看清,樓主使用的是TRUNCATE ,而不是DELETE。
如果使用的TRUNCATE ,自增列會重新從1開始的。
------解决方案--------------------
suxe() ( ) 信誉:100 Blog 加为好友 2007-07-14 10:57:09 得分: 0
楼上说的完全正确
MS SQL不支持truncate ,orcale里面倒是常用
---------------
完全錯誤,MS SQL中支持Truncate。
[解决办法]
樓主,你的想法是沒有問題的。
但是OleDbCommand可能不支持Truncate這個命令,想想別的方法吧。
[解决办法]
你的数据表有外键表?
[解决办法]
回复人:paoluo(一天到晚游泳的鱼) ( 五级(中级)) 信誉:100 2007-7-14 11:27:50 得分:0
suxe() ( ) 信誉:100 Blog 加为好友 2007-07-14 10:57:09 得分: 0
楼上说的完全正确
MS SQL不支持truncate ,orcale里面倒是常用
---------------
完全錯誤,MS SQL中支持Truncate。
回复人:wxl565(汪汪) ( 二级(初级)) 信誉:98 2007-07-14 15:04:44 得分:0
没有 就一个单独的表.....我也怀疑不支持 TRUNCATE这个命令
---------------
程序员应该有怀疑精神但不应该瞎猜疑...为什么不去查文档?
不能对以下表使用 TRUNCATE TABLE:
由 FOREIGN KEY 约束引用的表。
参与索引视图的表。
通过使用事务复制或合并复制发布的表。
对于具有以上一个或多个特征的表,请使用 DELETE 语句。
TRUNCATE TABLE 不能激活触发器,因为该操作不记录各个行删除。
[解决办法]
另外关于自增长标识...
TRUNCATE TABLE 删除表中的所有行,如果表包含标识列,该列的计数器重置为该列定义的种子值。如果未定义种子,则使用默认值 1
[解决办法]
請樓上指出,我哪句說錯了。
不能对以下表使用 TRUNCATE TABLE:
由 FOREIGN KEY 约束引用的表。
参与索引视图的表。
通过使用事务复制或合并复制发布的表。
对于具有以上一个或多个特征的表,请使用 DELETE 语句。
TRUNCATE TABLE 不能激活触发器,因为该操作不记录各个行删除。
-------------------
你看看這些情況,另外再看看樓主的錯誤提示,你覺得會是你列出的這幾種情況嘛。
[解决办法]
晕...楼上的你没错...我对你的话一字不漏的引用意思是支持你...