热情软件屋

 

如何在客户端获取当前服务器上记录的记录号


编号:QA000001
建立日期: 1997年10月1日 最后修改日期:1997年10月1日
所属类别:

lannyking:
    我用Delphi在Windows 95下开发面向客户/服务器的档案管理系统,想知道如何通过程序在客户端获取当前服务器上记录的记录号。服务器上的操作系统是Windows NT 4.0 Server中文版,客户端是Windows 95中文版,数据库建立系统是MS-SQL 6.5。

回答:

    我们知道Delphi的TTable、TQuery和TStoredProc部件都有个RecNo属性,它是当前记录在数据集(dataset)中的记录号。不过,这个属性只有对于dBASE和Paradox才是有意义的,而对于MS SQL Server它总为-1。这是因为记录号是个xBASE的概念,而对于大多数SQL服务器来说,都没有概念,通常一个记录在客户机查询结果的顺序号并不是该记录在当前服务器上记录的记录号(这里的记录号是按xBASE的概念)。所以直接让MS SQL Server 返回一个记录号是不可能的,只能根据实际需要采用一些变通的办法。例如,如果需要一个唯一的表示记录的标志,可以考虑使用数据库的主索引的值,因为MS SQL Server 不允许有两个记录有相同的主索引值。或者采用商品的编号、人的身份证号。如果采用循环顺序访问记录,那么循环变量也许最接近于记录号。由于你没有说明具体的用途,我们也只能提出这些建议供你参考。

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio