C
cgy2005
Unregistered / Unconfirmed
GUEST, unregistred user!
问题:
我我在服务器端创建了一个服务器应用程序,数据模块里面是两个Query(Query1,Query2)和两个dataprovider(dataprovider1,dataprovider2)
Query属性里的databasename分别指向两个我在BDE里加的数据库的别名
在客户端我用的是TSocketConnect和TClientdataset组件连接远程数据库的
现在服务器里的数据库有我要查找的表的时候一切正常,但时如果没有我要查找的表就会有异常出现,提示没有某天的表存在
客户端出错的地方:
ClientDatahis.close;
ClientDatahis.CommandText:= 'Select 时间,电压值 From ' +mydbfName
+ ' Where (变电所 =''' + BDSName + ''');//mydbfName是我要找的表的表名
ClientDatahis.open;//没有表的时候一open就出异常了,我该如何先判断服务器端是否有这个表,有的话我再open,没有的话我就提示没有当天的记录
我的想法:
原来在单机版本的情况下我是这样判断表是否存在的
MydbfPath := MainPath + 'HISDATA/' + inttostr(Year) + '/mydbf/';//要找的表的路径
MydbfName := 'BusVolt' + S1 + S2;//要找的表的名字
if FileExists(MydbfPath+MydbfName) then
begin
......
end;
现在在C/S模式下我的客户端不能用FileExists(MydbfPath+MydbfName)判断了,我该如何判断我远程服务器是否有我要找的表
如果有就继续执行,没有就提示没有这天的记录,我的想法是用
MydbfName := 'BusVolt' + S1 + S2;//要找的表名
fileexit:= gettablename(MydbfName);//调用函数返回一个布尔值
if fileexit then
begin
......
end;
Function TCrossHairForm.gettablename(MydbfName:string):boolean;
var
mytabel:string;
begin
try
......
result:=....;//这里的语句该如何写呢,如何去在远程服务器里找这个表是否存在然后再返回结果呢
except
result:=false;
end;
end;
我我在服务器端创建了一个服务器应用程序,数据模块里面是两个Query(Query1,Query2)和两个dataprovider(dataprovider1,dataprovider2)
Query属性里的databasename分别指向两个我在BDE里加的数据库的别名
在客户端我用的是TSocketConnect和TClientdataset组件连接远程数据库的
现在服务器里的数据库有我要查找的表的时候一切正常,但时如果没有我要查找的表就会有异常出现,提示没有某天的表存在
客户端出错的地方:
ClientDatahis.close;
ClientDatahis.CommandText:= 'Select 时间,电压值 From ' +mydbfName
+ ' Where (变电所 =''' + BDSName + ''');//mydbfName是我要找的表的表名
ClientDatahis.open;//没有表的时候一open就出异常了,我该如何先判断服务器端是否有这个表,有的话我再open,没有的话我就提示没有当天的记录
我的想法:
原来在单机版本的情况下我是这样判断表是否存在的
MydbfPath := MainPath + 'HISDATA/' + inttostr(Year) + '/mydbf/';//要找的表的路径
MydbfName := 'BusVolt' + S1 + S2;//要找的表的名字
if FileExists(MydbfPath+MydbfName) then
begin
......
end;
现在在C/S模式下我的客户端不能用FileExists(MydbfPath+MydbfName)判断了,我该如何判断我远程服务器是否有我要找的表
如果有就继续执行,没有就提示没有这天的记录,我的想法是用
MydbfName := 'BusVolt' + S1 + S2;//要找的表名
fileexit:= gettablename(MydbfName);//调用函数返回一个布尔值
if fileexit then
begin
......
end;
Function TCrossHairForm.gettablename(MydbfName:string):boolean;
var
mytabel:string;
begin
try
......
result:=....;//这里的语句该如何写呢,如何去在远程服务器里找这个表是否存在然后再返回结果呢
except
result:=false;
end;
end;