回 帖 发 新 帖 刷新版面

主题:PB如何检测网络

在PB中如何设置:
首先检测是否是网络,如果有则连接网络数据库;如果没有则直接连接本地数据库。我
用PB直接连网络数据库,可是如果不通要等很久。可不可以设置先检测网络状况的,再根据网络状况去连数据库。如果有的话,要怎么写?

回复列表 (共2个回复)

沙发

哈哈。你可判断一下 SQLCA.SQLCODE的返回值然后决定,另外也可以调用api屏是否网络通但是我不会choose case gs_profile_name
               case 'sqlanywhere'
           trans_in.DBMS                 = ls_dbms
        trans_in.ServerName         = ls_servername
        trans_in.DATABASE         = ls_database
        trans_in.UserId             = ls_userid
        trans_in.DbPass             = ls_dbpass
        trans_in.LogId             = ls_logid
        trans_in.LogPass             = ls_logpass
        trans_in.autocommit         = false
        trans_in.DbParm = "Connectstring='DSN=" + ls_connectstring + ";UID=" + ls_userid + ";PWD=" + ls_dbpass + "'"
    case 'sybase'
        trans_in.DBMS                 = ls_dbms
        trans_in.ServerName         = ls_servername
        trans_in.DATABASE         = ls_database
        trans_in.UserId             = ls_userid
        trans_in.DbPass             = ls_dbpass
        trans_in.LogId             = ls_logid
        trans_in.LogPass             = ls_logpass
        trans_in.autocommit         = false
        trans_in.DbParm = "charset = '" + ls_character + "',host = '" + ls_username + "'"
    case else
        messagebox("系统错误","未指定正确的数据库类型")
end choose
connect using trans_in;
If trans_in.SQLCode <> 0 Then
    Beep(1)
    Fn_showMessage(2,"","数据库连接有问题,请询问系统管理员!" + sqlca.sqlerrtext,"INFORMATION","OK",1)
    Return -1
End If
return 0

板凳


那些局部变量在哪里来的
??[em19]

我来回复

您尚未登录,请登录后再回复。点此登录或注册