如果数据库达到SQL Server Compact Edition的4GB限制会发生什么?这有特殊的例外吗?
我可以安全地捕获此事件或异常,并且,比方说,创建一个新数据库吗?
答案 0 :(得分:8)
我自己没有经历过这种情况,但看起来会抛出SqlCeException
,并且包含SqlCeError的NativeError
属性的错误代码为25104(SSCE_M_DATABASETOOBIG)。
这是与{db}引擎错误相关的SqlCeError
个catch
本机代码 - 关于db文件过大的问题大约是下行的2/3。该列表适用于SQL CE 3.5;你没有指定你使用的版本,但我猜它不会改变。
我不明白为什么你无法捕获此异常,然后在try {
//do something
} catch (SqlCeException cexc){
foeach (SqlCeError aError in cexc.Errors) {
if (aError.NativeError == 25104) { //this is the code for the TOO BIG error code
//handle too big error -- maybe create a new database
}
}
}
部分创建一个新数据库。
{{1}}
我希望这有帮助!