[分享] 全部删除MSSQL表中所有的数据只保留表结构

[复制链接]
  • TA的每日心情
    开心
    2023-12-15 09:13
  • 签到天数: 55 天

    [LV.5]六品通判

    1197

    主题

    1965

    回帖

    13万

    积分

    Administrator

    分子与原子计算公式

    Rank: 9Rank: 9Rank: 9

    积分
    131976

    终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

    QQ
    发表于 2015-4-29 17:11:27 | 显示全部楼层 |阅读模式
    在数据库修复工作中会用到,这是删除MSSQL表所有的数据,但不删除表结构,你懂得

    --CREATE PROCEDURE sp_DeleteAllData
    --AS
    --EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
    --EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL'
    --EXEC sp_MSForEachTable 'DELETE FROM ?'
    --EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
    --EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL'
    --EXEC sp_MSFOREACHTABLE 'SELECT * FROM ?'
    --GO
    exec sp_DeleteAllData
  • TA的每日心情
    开心
    2014-12-25 02:29
  • 签到天数: 45 天

    [LV.5]六品通判

    16

    主题

    419

    回帖

    1240

    积分

    [INTOHARD]营长

    Rank: 6Rank: 6

    积分
    1240
    QQ
    发表于 2015-4-30 11:05:42 | 显示全部楼层
    学习中!茻茻茻懂
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-1-13 15:22
  • 签到天数: 2 天

    [LV.1]布衣百姓

    0

    主题

    46

    回帖

    24

    积分

    [INTOHARD]工兵

    Rank: 1

    积分
    24
    发表于 2017-1-23 15:58:29 | 显示全部楼层
    看了你的贴子,有点郁闷,你这个如果是遇上大的数据表,估计就卡住了,执行不下去了!
    而且速度很慢。
    删除数据使用truncate table命令是最快的。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表