- 博客(8)
- 收藏
- 关注
原创 2021-08-25
今天,同事在操作一个很老的数据库 SQL SERVER 2000时,无意中用删除命令,准其中的某张表数据给删除了,当时急出了一头汗。得知情况后,我先备份数据库,再备份数据库日志。然后查找有没有老的全备数据库备份。还好有一个1个月以前的备份。重新找一台有SQL SERVER 2000环境的工作站,先恢复老的备份。在 SQL 查询分析器中执行:restore database [XXX] on disk='d:\db\xxx.bak' with norecovery其中 XXX 是数据库名称,d:\db
2021-08-25 15:10:24 103
原创 创建 Delphi DataSnap 程序的问题集萃(4)
(本文所讨论的开发环境,为 Delphi XE5) 最近有点小忙,博客只能忙里偷闲地写了。 本篇介绍如何在客户端和服务器端之间传递数据。 我本人很不喜欢在页面上频繁地使用数据感知控件,并使用 DataSet 来作为参数传来传去——因为 DataSet 并不是一个强类型类,而且它与数据库的耦合性太紧了。 相比较于 DataSet(如 TClientDataSe
2014-01-20 23:22:42 1542
原创 Delphi 中ADO使用SQLOLEDB数据驱动时,无法获取存储过程RAISERROR返回的字符串描述
真的很郁闷:我的三层架构,数据库访问层使用的是 TADOConnection系列控件:TADOQuery、TADOStoredProc。今天无意中测试存储过程,发现存储过程中的事务回滚了,但RAISERROR返回的错误程序却捕获不到。存储过程示例如下:alter procedure proc_test() asbegin begin transaction update
2014-01-20 00:08:10 2187 1
原创 创建 Delphi DataSnap 程序的问题集萃(3)
(本文所讨论的开发环境,为 Delphi XE5) 本篇介绍如何实现服务器端数据库连接的共享。 常见的数据库连接实现,是为每个数据模块建立一个连接。但这样做将产生大量的数据库连接,并产生很多问题。 在上一篇,我们分析了 Datasnap 客户端连接服务器端时相关事件的执行顺序。其中,ServerContainerUnit1 容器是在服务器端一开始运行时就创建,直到
2013-12-29 11:07:25 1710
原创 创建 Delphi DataSnap 程序的问题集萃(2)
当服务器端使用 Invotation 模式的生命周期,且大量的客户端连接时,我们可以采用对象池的设计,为 TDSServerModule 建立对象池,这其实也是数据库连接对象的对象池。 这带来了新问题:我们的业务对象如何取得数据库连接? 数据库连接对象存在于 TDSServerModule 中,而 TDSServerModule 是用户连接并执行服务器方法时动态创建。如果业务对
2013-12-29 10:04:48 1660
原创 创建 Delphi DataSnap 程序的问题集萃(1)
当我们开始创建第一个 DataSnap 商业软件前,有些技术上的问题必须明确。 DataSnap 是三层架构,客户端暂且不谈,我们先讨论一下服务器端的架设。 在服务器端,其实要实现两层架构:业务逻辑部分、数据访问部分。 在 DataSnap 中,我们使用 TDSServerModule 类,将业务逻辑展示给客户端。也就是说,只有这个类中的 Public 方法才能被客户
2013-12-24 15:50:10 1760
原创 Delphi scktsrvr 三层架构程序,解决“远程主机强迫关闭了一个现有的连接”(2)
(接上一篇) 老程序运行一段时间后,相比较原来的状况,稳定多了。但时不时的还会有客户反映,程序有时会假死。我又反思了一下,原因在于:用户和服务器之间的连接,由于各种原因断掉,就会出现这样的情况。原先客户量才几十,现在客户量多了,scktsrvr 模式的弊端难以解决。先折中处理下吧,毕竟用户体验度第一,以后想法改成 DataSnap。 折中处理方案如下: 在客户端程序的
2013-12-24 11:03:53 2150
原创 Delphi scktsrvr 三层架构程序,解决“远程主机强迫关闭了一个现有的连接”
我手里的一个老项目,用的是Delphi scktsrvr.exe 架构的三层程序,用户数300左右。使用过程中,一直有用户反映,有时表格填写地好好的,提交时却报错:远程主机强迫关闭了一个现有的连接。重新读了一下源码,没看出什么毛病。于是上网百度,终于了解到,用户和服务器之间的连接,由于各种原因断掉,就会有这样的提示。应该把它看做常态。于是我就想在Application.OnException事
2013-11-12 09:30:36 2534
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人