51代码网ORACLEMYSQLSQL SERVER其它数据库java/jspasp/asp.netC/C++/VC++APP应用其它语言服务器应用
您现在的位置: 51代码网 >> 其它 >> 文章正文

Delphi Xe2 三层数据库应用的源码例子

更新时间:2013-8-10:  来源:51代码网

一个Delphi Xe2 三层数据库应用的源码例子

我是想通过多线程,连接远程的数据库,进行数据查询和修改,对这些有一点概念,对DELPHI是新手,请各位大侠出手相助!
在网上也查了很多例子,基本上都是用socket,都是D7的代码,要建一个远程数据模块,但我在XE2里找不到,不知道用什么方法实现会比较好呢?最后有实例,

好像现在3层都用DataSnap了。

procedure TfrmMain.dsrvrServerConnect(DSConnectEventObject   : TDSConnectEventObject); var  ClientConnection: TIdTCPConnection;   val: TCP_KeepAlive;   Ret: PDWORD; begin  EnterCriticalSection(FSection);   if DSConnectEventObject.ChannelInfo <> nil then  begin    ClientConnection := TIdTCPConnection(DSConnectEventObject.ChannelInfo.Id);     ClientConnection.OnDisconnected := ClientDisconnectEvent; // 祑都豖堤ㄛ涴曆岆壽瑩     // 扢离陑泐婦     val.OnOff := 1;     val.KeepAliveTime := 5000;     val.KeepAliveInterval := 3000;     WSAIoctl(ClientConnection.Socket.Binding.Handle, IOC_IN or IOC_VENDOR or 4,       @val, SizeOf(val), nil, 0, @Ret, nil, nil);     // 珆尨陓洘       cdsClients.DisableControls;     cdsClients.Append;     cdsClients['ClientID'] := DSConnectEventObject.ChannelInfo.Id;     cdsClients['ClientIP'] := ClientConnection.Socket.Binding.PeerIP;     cdsClients['ClientPort'] :=       IntToStr(ClientConnection.Socket.Binding.PeerPort);     cdsClients['LoginTime'] := Now();     cdsClients.Post;     cdsClients.EnableControls;   end;   LeaveCriticalSection(FSection); end;

赞助商链接
推荐文章
  • 此栏目下没有推荐文章
  • {
    设为首页 | 加入收藏 | 友情链接 | 网站地图 | 联系站长 |