- 浏览: 256511 次
文章分类
- 全部博客 (395)
- Tech (0)
- [随笔分类]心情 (95)
- [随笔分类]技术 (112)
- [随笔分类]管理心得 (13)
- [随笔分类]Code SOP (5)
- [随笔分类]望图知意 (11)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (8)
- [随笔分类]重构代码 (1)
- [随笔分类]童童 (2)
- Program (1)
- [随笔分类]看你知道不知道 (1)
- [网站分类]4.其他技术区 (31)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (21)
- [网站分类]9.求职招聘区(个人求职、企业招聘) (0)
- [随笔分类]昨日关注 (15)
- [网站分类]6.读书区(技术书籍阅读心得、书籍推荐) (3)
- [随笔分类]一步一个脚印 (2)
- [网站分类]网站管理区(网站管理方面的疑问、建议、意见, 寻求管理员帮助) (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (3)
最新评论
今天用户抱怨,为什么数据库中条目的计数越来越大,而且清空数据库后重新计数,还是变大?
其实这是我在设计的时候懒惰造成的,产品使用的是SQLServer数据库,数据库的字段ID是标识列,是自增的,当时没有考虑ID变大的情况,所以就任由着字段编号无限的变大,也没有注意,当用户抱怨的时候,也没太当回事,因为程序没有什么错误呀.
其实这是一个不好的用户体验,而我们完全可以解决,其实在删除数据或全部删除数据的时候,增加一个校验,如果数据库中记录数目为0,那么就重新设置标识列的计数,也就很简单了,其实我们真的不应该忽视任何细节,就是一个简单的删除记录/清空表,其实都大有学问的.
在SQLServer中的解决方法如下:
DBCC CHECKIDENT
检查指定表的当前标识值,如有必要,还对标识值进行更正。
举例:
强制表中的当前标识值为 1。
另外一条需要注意的语句是
TRUNCATE TABLE
删除表中的所有行,而不记录单个行删除操作。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。
若要删除表中的所有行,则 TRUNCATE TABLE 语句是一种快速、无日志记录的方法。该语句总是比不带条件的 DELETE 语句要快,因为 DELETE 语句要记录对每行的删除操作,而 TRUNCATE TABLE 语句只记录整个数据页的释放。TRUNCATE TABLE 语句立即释放由该表的数据和索引占用的所有空间。所有索引的分发页也将释放。
与 DELETE 语句相同,使用 TRUNCATE TABLE 清空的表的定义,同其索引和其它相关的对象一起仍保留在数据库中。必须使用 DROP TABLE 语句才能除去表的定义。
呵呵,有些时候看帮助就是不认真,往往几句话,能够对程序性能和效果有很大的改变.
其实这是我在设计的时候懒惰造成的,产品使用的是SQLServer数据库,数据库的字段ID是标识列,是自增的,当时没有考虑ID变大的情况,所以就任由着字段编号无限的变大,也没有注意,当用户抱怨的时候,也没太当回事,因为程序没有什么错误呀.
其实这是一个不好的用户体验,而我们完全可以解决,其实在删除数据或全部删除数据的时候,增加一个校验,如果数据库中记录数目为0,那么就重新设置标识列的计数,也就很简单了,其实我们真的不应该忽视任何细节,就是一个简单的删除记录/清空表,其实都大有学问的.
在SQLServer中的解决方法如下:
DBCC CHECKIDENT
检查指定表的当前标识值,如有必要,还对标识值进行更正。
举例:
DBCC CHECKIDENT (TableName, RESEED, 1)
强制表中的当前标识值为 1。
另外一条需要注意的语句是
TRUNCATE TABLE
删除表中的所有行,而不记录单个行删除操作。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。
若要删除表中的所有行,则 TRUNCATE TABLE 语句是一种快速、无日志记录的方法。该语句总是比不带条件的 DELETE 语句要快,因为 DELETE 语句要记录对每行的删除操作,而 TRUNCATE TABLE 语句只记录整个数据页的释放。TRUNCATE TABLE 语句立即释放由该表的数据和索引占用的所有空间。所有索引的分发页也将释放。
与 DELETE 语句相同,使用 TRUNCATE TABLE 清空的表的定义,同其索引和其它相关的对象一起仍保留在数据库中。必须使用 DROP TABLE 语句才能除去表的定义。
呵呵,有些时候看帮助就是不认真,往往几句话,能够对程序性能和效果有很大的改变.
发表评论
-
打包应该注意MDAC的安装次序
2005-11-14 16:06 957MDAC得打包通常都是很讨厌得,一直没有太好的办法。以前得解决 ... -
不要忽视细节,由调用一个SqlServer系统存储过程想到的
2005-11-22 13:21 621今天在调用SqlServer中的系统存储过程sp_droplo ... -
CMD命令也要用好
2005-11-30 13:30 993以前一些程序需要执行 ... -
一步一个脚印-产品升级随笔(1)-vision
2005-12-18 08:17 676产品的维护和升级总是困扰着我,犯过很多的错误,吃过很多的亏,如 ... -
一步一个脚印-产品升级随笔(4)-波浪
2005-12-30 11:10 693产品的升级不是一次就可以完成的,需求会像洪水一样永远都不会停止 ... -
国民党的800万军队不是一天消灭的
2006-01-09 15:58 618这几天又去了一趟京城,刚刚回到家里,特别的疲惫,昨天美美的在家 ... -
还不如扔掉
2006-01-12 12:42 586周六、周日打算搬回学校的单身宿舍了,把租的房子退掉,但是屋子里 ... -
看你知道不知道之-全局对象
2006-02-10 12:49 651这几天在整理类库,想通过VB6来提供全局函数,将公司常用的函数 ... -
看你知道不知道之-制作数据字典
2006-02-10 17:49 1011这部分内容和VB6的关系不大,但是确是困扰我的一个问题。 这几 ... -
看你知道不知道之-为进程内部件设置基地址
2006-02-13 11:17 693在用Project Analyzer 进行 ... -
看你知道不知道之-Call转义序列
2006-02-14 13:00 650今天在整理代码的时候,需要修改一个函数,使这个函数可以通过AD ... -
看你知道不知道之-使用SET NOCOUNT优化存储过程
2006-02-15 14:51 766每次我们在使用查询分析器调试SQL语句的时候,通常会看到一些信 ... -
看你知道不知道之-你注意Where子句的次序了吗?
2006-02-16 08:12 604这个系列越来越多的是和SQL语句相关的问题了,因为这段时间工作 ... -
看你知道不知道之-用好sp_depends
2006-02-21 12:25 1139前几天检查一个兄弟写的存储过程,我想知道这个存储过程到底涉及到 ... -
今天20,明天21
2006-03-06 15:58 564这几天一直封闭,昨天刚刚放出来,感觉十分的疲惫。在封闭的过程中 ... -
重构代码-随笔(1)
2006-03-09 10:32 576原始代码: If txt ... -
干这行最重要的是要坐住板凳
2006-03-12 20:40 722我们周五的时候刚刚辞退的一个试用期员工,给我在QQ留言,内容大 ... -
看你知道不知道之-别惹我Msgbox的Title
2006-03-13 19:40 603在VB6中,MsgBox是比较讨厌的,我在整理代码的时候,通常 ... -
Windows Server 2003 R2 修复Windows Server 2003
2006-03-19 13:05 1185最近特别喜欢去反波上听平客的段子,有一些也下载到本地了,但是我 ... -
靠左侧通行
2006-03-23 08:15 736从小老师和父母就告诉我,一定要靠人行横道的右侧通行,我也是 ...
相关推荐
### C语言编程易犯毛病集合 C语言以其强大的功能和灵活的使用方式,在软件开发领域占据着重要地位。然而,这种灵活性也可能导致编程时容易出现一些不易察觉的错误。本文根据实际经验和常见问题,总结了C语言编程中...
以下是从标题“C语言编程易犯毛病”及其描述中提取的一些关键知识点,这些知识点涵盖了C语言编程中容易遇到的错误,帮助读者更好地理解和避免这些常见问题。 ### 1. 忽视大小写敏感性 C语言区分大小写,这意味着`a...
文档开发必备,你开发过程中遇到的问题和一下小毛病都可以来这里解决。
本资料“C语言编程易犯毛病集合”针对这些问题进行了归纳总结,旨在为初学者提供宝贵的指导。 1. **变量声明与初始化** - 不声明变量类型:C语言要求每个变量必须指定类型,忘记声明会导致编译错误。 - 变量未...
解决服务器的小毛病 为大家提供一点方便 同时赚取积分
如果你为了一些电脑的问题而发愁!如果有些问题你无法解决!如果你的电脑有小毛病但是你又不知道如何解决! 那就别再犹豫了。我把我说收集的精华编辑成了文档。想要的可以下载下去看看! 我这里就不一一解释了!!
书中的故事富有想象力,如吸尘器可以吸走坏毛病,天气博物馆让人们体验不同天气,以及吃垃圾的蝗虫解决环境问题等,这些都激发了孩子们的思考和探索欲望。例如,通过“吃垃圾的蝗虫”这个故事,作者引导孩子们关注...
电脑用久了,当然会有一些小毛病的出现,例如风扇响声大、电脑卡等问题。下面我们将逐一解说台式电脑风扇响声大的原因和修复方法。 一、检查脑风扇响声大的常见原因: 1、轴承缺乏润滑油 轴承对于风扇转运起到了...
本文将结合标题“css应该注意的一些细节问题”及描述中的提示“使用css容易犯的一些小毛病”,来深入探讨这些易被忽视却又至关重要的细节。 ### 1. 文件大小与压缩 - **文件大小**:保持CSS文件的体积较小对于提高...
总的来说,《大个子老鼠小个子猫》通过一系列生动有趣的故事,教会孩子们诚实、善良、互助和尊重的价值观,同时也启发他们思考解决问题的不同方法,培养他们的想象力和创新思维。这样的书籍对于孩子的成长有着积极的...
#### 一、函数 main 的定义问题 在 C 语言程序中,`main` 函数是程序执行的起点。很多初学者在定义 `main` 函数时容易忽略其返回类型及参数形式。正确的 `main` 函数定义应该如下: ```c int main(void) { int a ...
在这个回答中,销售顾问成功地转移了客户的注意力,从车子的小毛病的问题转移到了客户的信任和销量上,并且通过统计数据的方式,证明了车子的质量和可靠性。 4.奇葩异议:你们的车子空间确实非常大,钢板也很厚实,...
5. 解决问题与提问:评语鼓励学生勇于提问和解决问题,“不懂的问题现在也能勇敢地提问”、“如果改掉这些小毛病,你肯定会成为一名好学生”,这鼓励学生积极求知和自我改进。 6. 进步与潜力:教师注意到学生的进步...
1. 维修不及时:共享单车“是坏及废”的现象非常普遍,很多时候单车出现些许的小毛病,得不到及时妥善的处理,加之用户对于单车缺乏足够的爱护,这样就使得共享单车会更加严重破损,甚至不能正常使用。 2. “上私锁...
通过命令行界面(CMD)执行的一条特定命令,这条命令能够帮助用户解决电脑运行中遇到的一些常见问题,尤其是那些与系统文件关联错误或注册表冲突有关的小毛病。在Windows环境下,由于各种软件、驱动程序和系统更新的...
- 提醒学生注意克服学习中的不足,如马虎、书写不规范等小毛病,鼓励他们持续改进。 3. **潜力与上进心**: - 肯定学生的聪明才智和自信心,同时也指出过多的诱惑可能会影响他们的专注力。 - 呼吁学生认识到自身...