|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
这能找出所有错误的99.99%。它不能找出的是仅仅涉及数据文件的损坏(这很不常见)。如果你想要检查一张表,你通常应该没有选项地运行myisamchk或用-s或--silent选项的任何一个。server|前提/*必要得了局:某一天的日期
已知前提:是日的年,月,礼拜几,在这个月中处于第几周
举例申明:但愿求出2004-11-22
已知前提:2004年,11月,礼拜一,是日在11月是第周围
declare@yearnumeric(4),@monthnumeric(2),@weekdayvarchar(6),@weeknumeric(1)
set@year=2004
set@month=11
set@weekday=礼拜一
set@week=4
*/
alterfunctionRequestDate
(@yearnumeric(4),@monthnumeric(2),@weekdayvarchar(6),@weeknumeric(1))
returnsdatetimeas
begin
declare@date1varchar(10)--失掉该月的第一天的日期
declare@month1varchar(2)
if@month<10
set@month1=0+ltrim(rtrim(str(@month)))
else
set@month1=ltrim(rtrim(str(@month)))
set@date1=ltrim(rtrim(str(@year)))+-+@month1+-+01
declare@num1numeric(3)
declare@num2numeric(3)
declare@num3numeric(3)
set@num1=datepart(ww,@date1)--失掉该月的第一天在该年的周数
set@num1=@num1+@week-2--失掉该月的请求得的那天地点的周数与该年的第一周第一天的周数差
set@num2=datepart(dw,dateadd(ww,@num1,2004-01-01))--失掉日期对应的礼拜代号
select@num3=case@weekday
when日曜日then1
when礼拜一then2
when礼拜二then3
when礼拜三then4
when木曜日then5
when礼拜五then6
when礼拜六then7
end
returndateadd(dd,@num3-datepart(dw,dateadd(ww,@num1,2004-01-01)),dateadd(ww,@num1,2004-01-01))
end
--selectdbo.RequestDate(2004,11,礼拜一,4)
因此,我们的第一个“米”,就是二进制日志binlog必须是rowbased的。在rowbase下,二进制日志binlog同时记录了更新前后的整行记录。 |
|