数据库删除表中数据

数据库删除表中数据

数据库删除表中数据,如果直接清空数据,id自增长的话,再添加的数据会从清除之前的id继续自增长,想要删除数据,id 自增长仍然从1开始,如下操作:

show create TABLE Analysis.ORDER_SUMM

执行以上语句结果如下:
其实在这里插入图片描述
其实就是表结构 全选后是这样的:

CREATE TABLE `order_detail` (
  `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '编号',
  `SOURCE_ID` varchar(255) DEFAULT NULL COMMENT '源数据来源',
  `ACCOUNT_ID` varchar(255) DEFAULT NULL COMMENT '账户ID',
  `ORDER_ID` varchar(255) DEFAULT NULL COMMENT '订单ID',
  `DATE` datetime DEFAULT NULL COMMENT '日期',
  `CUSTOMER_ID` varchar(255) DEFAULT NULL COMMENT '顾客',
  `POS_ID` varchar(32) DEFAULT NULL COMMENT '网点',
  `DEVICE_ID` varchar(32) DEFAULT NULL COMMENT '设备',
  `GOODS_ID` varchar(32) DEFAULT NULL COMMENT '产品',
  `PRICE` decimal(10,2) DEFAULT NULL COMMENT '单价',
  `COUNT` int(11) DEFAULT NULL COMMENT '订单本种商品数量',
  `PAYMENT` varchar(255) DEFAULT NULL COMMENT '支付方式',
  `STATE` int(11) DEFAULT NULL COMMENT '订单状态,1-完成,2-未完成',
  `SYNC_TIME` datetime DEFAULT NULL COMMENT '同步时间',
  PRIMARY KEY (`ID`),
  KEY `POS` (`POS_ID`),
  KEY `DEVICE` (`DEVICE_ID`),
  KEY `PRODUCT` (`GOODS_ID`),
  KEY `CUSTOMER` (`CUSTOMER_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单详情表'

一般我会先drop 数据表 ,然后再create ,但是发现这样操作,对自增长的id有影响,id会从删除表之前的数据开始(跟直接清空表是一样的),我不想要这样,想要id 从1开始,于是执行下面这句话

TRUNCATE TABLE Analysis.ORDER_SUMMARY

这句话是关键 TRUNCATE TABLE用于删除表中的所有行,而不记录单个行删除操作
这样,id 就会从头开始啦 笔芯

你可能感兴趣的:(Sql)