使用SQL查询数据库中一切表的数据行数
这能找出所有错误的99.99%。它不能找出的是仅仅涉及数据文件的损坏(这很不常见)。如果你想要检查一张表,你通常应该没有选项地运行myisamchk或用-s或--silent选项的任何一个。明天在客户实行时,因常常性的必要检察用户录进到数据库中数据的数目,以是写了以下SQL语句用来查询数据库中一切表的数据量,公布到此,但愿能给有一样需求的伴侣带来匡助。declare@TableNamevarchar(128)
declare@T_TableRowsTable
(
TableNamevarchar(128)notnull,--表名
RowsCountintnotnulldefault(0)--数据的数目
)
declarecur_tablecursorlocalfor
selectnamefromsys.tablesorderbyname
opencur_table
fetchcur_tableinto@TableName
while@@fetch_status=0
begin
insertinto@T_TableRows(TableName,RowsCount)
exec(select+@TableName+,count(*)from+@TableName)
fetchcur_tableinto@TableName
end
closecur_table
deallocatecur_table
在下面的SQL顶用到了sys.tables表,关于该有的具体用法,请拜见本站:
使用SQL语句查询数据库中一切表
申明:由于sys.tables表只要sql2005今后才有,以是利用Sql2000的伴侣可使用sysobjects表来替换sys.tables表完成该功效:
SQL以下:
declare@TableNamevarchar(128)
declare@T_TableRowsTable(TableNamevarchar(128)notnull,RowsCountintnotnulldefault(0))
declarecur_tablecursorlocalfor
selectnamefromsysobjectswherextype=uorderbyname
opencur_table
fetchcur_tableinto@TableName
while@@fetch_status=0
begin
insertinto@T_TableRows(TableName,RowsCount)
exec(select+@TableName+,count(*)from+@TableName)
fetchcur_tableinto@TableName
end
closecur_table
deallocatecur_table
select*from@T_TableRowsorderbyRowsCountdesc,TableName
对于update操作,event中依次记录旧行,新行的值。 但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。 我个人认为就是孜孜不懈的学习 总感觉自己还是不会SQL 微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。 相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐 数据库物理框架没有变动undo和redo都放在数据库得transaction中,个人感觉是个败笔。如果说我们在设计数据库的时候考虑分多个数据库,可能能在一定程度上避免I/O效率问题。 如果你是从“学习某一种数据库应用软件,从而获得应聘的资本和工作机会”的角度来问的话。
页:
[1]