Jump to content
Fivewin Brasil

SQLLib - Erro ao retornar lista de Databases


macs

Recommended Posts

Amigos, boa tarde!

Estou com um problema ao retornar a lista de banco de dados existentes.

A conexão é realizada, existe vários bancos de dados na conexão, mas a função SQLGetDBs() não retorna nada.

Alguém já passou por isso?

 

 

////////////////////////////////////////////////////////////////////////
METHOD Conectar( cDataBase ) CLASS TConexao
////////////////////////////////////////////////////////////////////////
   Local lSucesso

   Default cDataBase := ::oConfiguracao:getDatabase()

   ::cDataBase := AllTrim(cDatabase)

   ::nHandle   := SQLConnect( ::oConfiguracao:getServidor(),;
               ::oConfiguracao:getPorta(),;
               ::cDataBase,;
               ::oConfiguracao:getUsuario(),;
               ::oConfiguracao:getSenha(),;
               SQL_NO_WARNING, "MySQL" )

   lSucesso:= ! SQLErrorNO() > 0

   if lSucesso

      /// O PROBLEMA ESTÁ AQUI. O DATABASE EXISTE E A FUNÇÃO SQLGETDBS não retorna a lista de databases existentes.
      IF Empty( sqlGetDBs( ::nHandle, "*" ) )
        ::DataBaseCriar( ::cDataBase )
        ::Reconectar()
        ::criarSql_indexes()
    else
        ::lDataBaseJaExiste := .T.
     Endif
  
   Endif

Return lSucesso

 

 

 

 

Link to comment
Share on other sites

Colega tente da forma abaixo

aDBs:= sqlArray("Show Databases")

If ASCAN(aDBs,{|X|X[1]="seubanco"}) # 0
   SQLExecute("Use seubanco")
   exit
Else
   TRY
      SQLExecute("Create Database seubanco")
      SQLExecute("Use seubanco")
   CATCH
      MsgInfo("01->Banco de Dados da CiaCpd não encontrado." + CRLF + ;
              "02->Não foi possível criar o Banco de Dados."+CRLF+"Confira.", "CIACPD Informa.")
   END
EndIf

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...