重置SqlServer表的自增列,让自增列从头入手下手记数
mysql的原来开发者又开发了MariaDB,MariaDB适合用来替代mysql吗良多时分我们必要重置某个表的自增列,让自增列从头从1入手下手记数。最蠢的办法固然是把该表删失落再从头建表了。实在,另有别的的办法能够重置自增列的值:办法一:利用TRUNCATETABLE语句:
TRUNCATETABLE删除表中的一切行,而不纪录单个行删除操纵,同时重置自增列。TRUNCATETABLE在功效上与没有WHERE子句的DELETE语句不异;可是,TRUNCATETABLE速率更快,利用的体系资本和事件日记资本更少。
办法二:利用DBCCCHECKIDENT语句:
DBCCCHECKIDENT在SQLServer2008R2中反省指定表确当前标识值,若有需要,则变动标识值。还可使用DBCCCHECKIDENT为标识列手动设置新确当前标识值。
语法:
DBCCCHECKIDENT
(
table_name
[,{NORESEED|{RESEED[,new_reseed_value]}}]
)
参数:
table_name:是要对其以后标识值举行反省的表名。指定的表必需包括标识列。表名必需切合标识符划定规矩。
NORESEED:指定不该变动以后标识值。
RESEED:指定应当变动以后标识值。
new_reseed_value:用作标识列确当前值的新值。
WITHNO_INFOMSGS:作废显现一切信息性动静。
示例:我们要重置表t1确当前标识值为1,sql以下:
dbcccheckident(t1,reseed,1)
我们要查询表t1确当前标识值,sql以下:
dbcccheckident(t1,noreseed)
每个Rows_log_event中包含event_type,可选值为WRITE_ROWS_EVENT、UPDATE_ROWS_EVENT、DELETE_ROWS_EVENT。从宏名字就能看出用途。 如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。 XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!) 如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。 大侠们有推荐的书籍和学习方法写下吧。 这是一个不错的新特性。虽然索引的附加字段没有索引键值效率高,但是相对映射到数据表中效率还是提高了很多。我做过试验,在我的实验环境中会比映射到表中提高30%左右的效率。 这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。 理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识 是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。
页:
[1]