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:
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.
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:
- <?php
- class ExecuteManualConnection extends TPage
- {
- public function __construct()
- {
- parent::__construct();
- try
- {
- // connection info
- $db = array();
- $db['host'] = 'GEAZIHP\SQLEXPRESS2016';
- $db['port'] = '1433';
- $db['name'] = 'SinergiaCampones';
- $db['user'] = 'sa';
- $db['pass'] = '2007tonga#2007longa';
- $db['type'] = 'mssql';
- TTransaction::open(NULL, $db); // open transaction
- $conn = TTransaction::get(); // get PDO connection
- // make query
- $result = $conn->query('select codigo, nome FROM PESSOA ORDER BY nome');
- // iterate results
- foreach ($result as $row)
- {
- print $row['codigo'] . '-';
- print $row['nome'] . "<br>\n";
- }
- TTransaction::close(); // close transaction
- }
- catch (Exception $e)
- {
- new TMessage('error', $e->getMessage());
- }
- }
- }
- ?>
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.
No host saiu sem a barra invertida. Mas está correto no arquivo ini. E a senha também é igual na classe e no ini.
O driver mssql pdo está instalado corretamente?
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.
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?
Execute o Studio pela linha de comando e veja se algum erro é exibido no terminal.
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
Alguém já conseguiu realizar essa conexão com MSSQL?
Geazi Teles Barbosa Junior, estou com o mesmo problema, vc conseguiu resolver ?
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?
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