如果数据库达到SQL Server Compact Edition的4GB限制会发生什么?这有特殊的例外吗?
我可以安全地捕获此事件或异常,并且假设创建一个新数据库吗?
我自己没有经历过这种情况,但看起来SqlCeException它将被抛出,并且NativeError包含的SqlCeError的属性将具有错误代码25104(SSCE_M_DATABASETOOBIG).
这是与db引擎错误相关的本机代码列表SqlCeError - 关于db文件太大的一个大约是下行的2/3.该列表适用于SQL CE 3.5; 你没有指定你使用的版本,但我猜它不会改变.
我不明白为什么你不能捕获这个异常,然后在你的catch部分创建一个新的数据库.
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
}
}
}
Run Code Online (Sandbox Code Playgroud)
我希望这有帮助!
| 归档时间: |
|
| 查看次数: |
801 次 |
| 最近记录: |