Lançado Adianti Framework 8.1!
Clique aqui para saber mais
Conectar a banco de dados SQL Server Olá, prezados. Estou com problema para conectar no banco de dados SQL Server, pelo assistente de modelos do Adianti Studio. O arquivo de configuração está setado da seguinte forma: host = GEAZIHPSQLEXPRESS2016 name = SinergiaCampones user = sa pass = minhasenha type = mssql port = 1433 prep = 1 Ao tentar usar o assistente de modelos, quando escolho o nome do banco ...
GJ
Conectar a banco de dados SQL Server  
Olá, prezados.
Estou com problema para conectar no banco de dados SQL Server, pelo assistente de modelos do Adianti Studio.
O arquivo de configuração está setado da seguinte forma:

host = GEAZIHPSQLEXPRESS2016
name = SinergiaCampones
user = sa
pass = minhasenha
type = mssql
port = 1433
prep = 1

Ao tentar usar o assistente de modelos, quando escolho o nome do banco de dados na lista, ocorre o erro:
IM002: [Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado

O interessante é que eu criei uma classe chamada ExecuteManualConnection com a seguinte sintaxe:

  1. <?php
  2. class ExecuteManualConnection extends TPage
  3. {
  4.     public function __construct()
  5.     {
  6.         parent::__construct();
  7.         try
  8.         {
  9.             // connection info
  10.             $db = array();
  11.             $db['host'] = 'GEAZIHP\SQLEXPRESS2016';
  12.             $db['port'] = '1433';
  13.             $db['name'] = 'SinergiaCampones';
  14.             $db['user'] = 'sa';
  15.             $db['pass'] = '2007tonga#2007longa';
  16.             $db['type'] = 'mssql';
  17.             
  18.             TTransaction::open(NULL$db); // open transaction 
  19.             $conn TTransaction::get(); // get PDO connection 
  20.              
  21.             // make query
  22.             $result $conn->query('select codigo, nome FROM PESSOA ORDER BY nome'); 
  23.              
  24.             // iterate results
  25.             foreach ($result as $row
  26.             { 
  27.                 print $row['codigo'] . '-'
  28.                 print $row['nome'] . "<br>\n"
  29.             } 
  30.             TTransaction::close(); // close transaction
  31.         }
  32.         catch (Exception $e)
  33.         {
  34.             new TMessage('error'$e->getMessage());
  35.         }
  36.     }
  37. }
  38. ?>


E quando executo a classe, funciona direitinho. O php está configurado corretamente, senão a classe que eu criei não funcionaria.
Algum nobre colega sabe como posso resolver? Estou sem idéia, depois de quebrar a cabeça por uma madrugada e uma manhã.

Desde já, antecipadamente agradeço.

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (10)


GJ

No host saiu sem a barra invertida. Mas está correto no arquivo ini. E a senha também é igual na classe e no ini.
EM

O driver mssql pdo está instalado corretamente?
NR

Geazi, o Studio roda via php-gtk em ambiente desktop, enquanto que seu exemplo que funcionou foi executado via apache. São configurações distintas. Verifique se os módulos do sql server estão habilitados também na configuração do php-gtk.
GJ

Nataniel, obrigado pelas informações.
Chequei no gtk e realmente a linha "extension = php_pdo_sqlsrv_52_nts_vc6.dll"
estava desabilitada.
Eu a habilitei. Parou de informar o erro "IM002: [Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado".
Entretanto, ao chamar a opção de "assistente de modelos", ao escolher o nome do banco de dados na lista, mostra a mensagem de "aguarde..." e, de repente, o Adianti Studio é finalizado de forma silenciosa, sem dar erro.
Já mudei a extensão para php_pdo_sqlsrv_52_ts_vc6.dll, tentando usar o modo Thread Safety e também "explode" o Adianti Studio do mesmo jeito.

Alguma sugestão dos colegas?

NR

Execute o Studio pela linha de comando e veja se algum erro é exibido no terminal.
JJ

Estou usando um servidor MsSql Server 2016, e ao gerar o modelo pelo adianti studio aparece o seguinte erro:
IMSSP: This extension requires either the Microsoft SQL Server 2008 Native Client (SP1 or later) or the Microsoft SQL Server 2008 R2 Native Client ODBC Driver to communicate with SQL Server. Neither of those ODBC Drivers are currently installed. Access the following URL to download the Microsoft SQL Server 2008 R2 Native Client ODBC driver for x86: go.microsoft.com/fwlink/?LinkId=163712

IM002: [Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado
Como instalar o serviço para acessar esta versão do MsSql Server?

Obrigado a todos
MS

Alguém já conseguiu realizar essa conexão com MSSQL?
MM

Geazi Teles Barbosa Junior, estou com o mesmo problema, vc conseguiu resolver ?
ML

Bom dia Geazi

Estou tentando configurar sqlserver express com acesso pelo PHP-GTK e está ocorrendo a mesma situação de o Adianti Studio é finalizado de forma silenciosa, sem dar erro.

Você pode dizer qual foi a solução?
ML

Boa tarde,

Encontrei a solução.

O adianti studio está com uma versão antiga do PHP então é necessário instalar um native client antigo também. Baixei a versão :Microsoft SQL Server 2008 R2 Native Client

No php-cli.ini que se encontra em :C:Program Files (x86)Adianti Studiophp-gtk2 , habilite :

extension = php_mssql.dll
extension = php_sqlsrv_52_nts_vc6.dll
extension = php_pdo_sqlsrv_52_nts_vc6.dll