{"id":5466,"date":"2018-07-25T14:58:18","date_gmt":"2018-07-25T17:58:18","guid":{"rendered":"https:\/\/wiki3.locaweb.com.br\/?post_type=ht_kb&#038;p=5466"},"modified":"2019-07-19T16:39:22","modified_gmt":"2019-07-19T19:39:22","slug":"conectar-ao-ms-sql-server-atraves-do-php","status":"publish","type":"ht_kb","link":"https:\/\/www.locaweb.com.br\/ajuda\/wiki\/conectar-ao-ms-sql-server-atraves-do-php\/","title":{"rendered":"Conectar ao MS SQL Server atrav\u00e9s do PHP"},"content":{"rendered":"<p>Neste artigo voc\u00ea ver\u00e1 algumas formas de realizar a conex\u00e3o com seu Banco de Dados MS SQL Server atrav\u00e9s da sua aplica\u00e7\u00e3o PHP.<\/p>\n    \t\t<div class=\"hts-messages hts-messages--alert   hts-messages--withicon \"   >\r\n    \t\t\t    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\t Lembrando que os c\u00f3digos abaixo s\u00e3o somente um exemplo, caso tenha d\u00favidas em como utilizar, recomendamos que verifique com um desenvolvedor de sua confian\u00e7a.    \t\t\t\t<\/p>\r\n    \t\t\t    \t\t\t\r\n    \t\t<\/div><!-- \/.ht-shortcodes-messages -->\r\n    \t\t\n<h6><span id=\"Fun.C3.A7.C3.A3o_mssql_connect.28_.29\" class=\"mw-headline\">Fun\u00e7\u00e3o mssql_connect( )<\/span><\/h6>\n<p><b>Arquivo: mssql.php<\/b><\/p>\n<p>Este exemplo lista todos os dados da consulta e efetua contagem dos registros, utilizando a fun\u00e7\u00e3o\u00a0<b>mssql_connect( )<\/b>.<br \/>\nA mesma est\u00e1 habilitada em servidores Windows 2003:<\/p>\n<p><strong>&lt;?<\/strong><\/p>\n<p><em>\/\/ Dados do banco<\/em><\/p>\n<p>$dbhost\u00a0\u00a0 = &#8220;hostbanco&#8221;;\u00a0\u00a0 <em>#Nome do host<\/em><\/p>\n<p>$db\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 = &#8220;nomebanco&#8221;;\u00a0\u00a0 <em>#Nome do banco de dados<\/em><\/p>\n<p>$user\u00a0\u00a0\u00a0\u00a0 = &#8220;nomeusuario&#8221;; <em>#Nome do usu\u00e1rio<\/em><\/p>\n<p>$password = &#8220;senhabase&#8221;;\u00a0\u00a0 <em>#Senha do usu\u00e1rio<\/em><\/p>\n<p>&nbsp;<\/p>\n<p><em>\/\/ Dados da tabela<\/em><\/p>\n<p>$tabela = &#8220;nometabela&#8221;;\u00a0\u00a0\u00a0 <em>#Nome da tabela<\/em><\/p>\n<p>$campo1 = &#8220;campo1tabela&#8221;;\u00a0 <em>#Nome do campo da tabela<\/em><\/p>\n<p>$campo2 = &#8220;campo2tabela&#8221;;\u00a0 <em>#Nome de outro campo da tabela<\/em><\/p>\n<p>&nbsp;<\/p>\n<p>@mssql_connect($dbhost,$user,$password) or die<\/p>\n<p>(&#8220;N\u00e3o foi poss\u00edvel a conex\u00e3o com o servidor!&#8221;);<\/p>\n<p>@mssql_select_db(&#8220;<strong>$db<\/strong>&#8220;) or die<\/p>\n<p>(&#8220;N\u00e3o foi poss\u00edvel selecionar o banco de dados!&#8221;);<\/p>\n<p>&nbsp;<\/p>\n<p>$instrucaoSQL = &#8220;SELECT <strong>$campo1<\/strong>, <strong>$campo2<\/strong> FROM <strong>$tabela<\/strong> ORDER BY <strong>$campo1<\/strong>&#8220;;<\/p>\n<p>$consulta = mssql_query($instrucaoSQL);<\/p>\n<p>$numRegistros = mssql_num_rows($consulta);<\/p>\n<p>&nbsp;<\/p>\n<p>echo &#8220;Esta tabela cont\u00e9m <strong>$numRegistros<\/strong> registros!<strong>\\n<\/strong>&lt;hr&gt;<strong>\\n<\/strong>&#8220;;<\/p>\n<p>&nbsp;<\/p>\n<p>if ($numRegistros!=0) {<\/p>\n<p>while ($cadaLinha = mssql_fetch_array($consulta)) {<\/p>\n<p>echo &#8220;<strong>$cadaLinha<\/strong>[<strong>$campo1<\/strong>] &#8211; <strong>$cadaLinha<\/strong>[<strong>$campo2<\/strong>]<strong>\\n<\/strong>&lt;br&gt;<strong>\\n<\/strong>&#8220;;<\/p>\n<p>}<\/p>\n<p>}<\/p>\n<p><strong>?&gt;<\/strong><\/p>\n<h6><span id=\"Fun.C3.A7.C3.A3o_sqlsrv_connect.28_.29\" class=\"mw-headline\">Fun\u00e7\u00e3o sqlsrv_connect( )<\/span><\/h6>\n<p>Neste outro exemplo \u00e9 mostrado um script de conex\u00e3o utilizando a fun\u00e7\u00e3o\u00a0<b>sqlsrv_connect( )<\/b>. A mesma est\u00e1 habilitada em servidores Windows 2008:<\/p>\n<p><b>Arquivo: sqlsrv.php<\/b><\/p>\n<p>&lt;?<br \/>\n\/\/ Dados do banco<br \/>\n$dbhost = &#8220;hostbanco&#8221;; #Nome do host<br \/>\n$db = &#8220;nomebanco&#8221;; #Nome do banco de dados<br \/>\n$user = &#8220;nomeusuario&#8221;; #Nome do usu\u00e1rio<br \/>\n$password = &#8220;senhabase&#8221;; #Senha do usu\u00e1rio<\/p>\n<p>\/\/ Dados da tabela<br \/>\n$tabela = &#8220;nometabela&#8221;; #Nome da tabela<br \/>\n$campo1 = &#8220;campo1tabela&#8221;; #Nome do campo da tabela<br \/>\n$campo2 = &#8220;campo2tabela&#8221;; #Nome de outro campo da tabela<\/p>\n<p>$conninfo = array(&#8220;Database&#8221; =&gt; $db, &#8220;UID&#8221; =&gt; $user, &#8220;PWD&#8221; =&gt; $password);<br \/>\n$conn = sqlsrv_connect($dbhost, $conninfo);<\/p>\n<p>$instrucaoSQL = &#8220;SELECT $campo1, $campo2 FROM $tabela ORDER BY $campo1&#8221;;<\/p>\n<p>$params = array();<br \/>\n$options =array(&#8220;Scrollable&#8221; =&gt; SQLSRV_CURSOR_KEYSET);<br \/>\n$consulta = sqlsrv_query($conn, $instrucaoSQL, $params, $options);<br \/>\n$numRegistros = sqlsrv_num_rows($consulta);<\/p>\n<p>echo &#8220;Esta tabela cont\u00e9m $numRegistros registros!\\n&lt;hr&gt;\\n&#8221;;<\/p>\n<p>if ($numRegistros!=0) {<br \/>\nwhile ($cadaLinha = sqlsrv_fetch_array($consulta, SQLSRV_FETCH_ASSOC)) {<br \/>\necho &#8220;$cadaLinha[$campo1] &#8211; $cadaLinha[$campo2]\\n&lt;br&gt;\\n&#8221;;<br \/>\n}<br \/>\n}<br \/>\n?&gt;<\/p>\n<h6><span id=\"Provider_SQLOLEDB\" class=\"mw-headline\">Provider SQLOLEDB<\/span><\/h6>\n<p>Neste outro exemplo \u00e9 mostrado um script de conex\u00e3o utilizando o Provider\u00a0<b>SQLOLEDB<\/b>:<\/p>\n<p><b>Arquivo: PDO_SQLOLEDB.php<\/b><\/p>\n<p>&lt;?<br \/>\n\/\/ Dados do banco<br \/>\n$dbhost = &#8220;hostbanco&#8221;; #Nome do host<br \/>\n$db = &#8220;nomebanco&#8221;; #Nome do banco de dados<br \/>\n$user = &#8220;nomeusuario&#8221;; #Nome do usu\u00e1rio<br \/>\n$password = &#8220;senhabase&#8221;; #Senha do usu\u00e1rio<\/p>\n<p>\/\/ Dados da tabela<br \/>\n$tabela = &#8220;nometabela&#8221;; #Nome da tabela<br \/>\n$campo1 = &#8220;campo1tabela&#8221;; #Nome do campo da tabela<\/p>\n<p>$conn = new COM (&#8220;ADODB.Connection&#8221;) or die(&#8220;N\u00e2o foi poss\u00edvel carregar o ADO&#8221;);<br \/>\n$connStr = &#8220;PROVIDER=SQLOLEDB;SERVER=&#8221;.$dbhost.&#8221;;UID=&#8221;.$user.&#8221;;PWD=&#8221;.$password.&#8221;;DATABASE=&#8221;.$db;<br \/>\n$conn-&gt;open($connStr);<\/p>\n<p>$instrucaoSQL = &#8220;SELECT $campo1 FROM $tabela&#8221;;<br \/>\n$rs = $conn-&gt;execute($instrucaoSQL);<\/p>\n<p>$num_columns = $rs-&gt;Fields-&gt;Count();<br \/>\necho &#8220;Foi mostrada $num_columns coluna da presente tabela.&#8221;. &#8220;&lt;br&gt;&lt;br&gt;&#8221;;<\/p>\n<p>for ($i=0; $i &lt; $num_columns; $i++)<br \/>\n{<br \/>\n$fld[$i] = $rs-&gt;Fields($i);<br \/>\n}<\/p>\n<p>echo &#8220;&lt;table&gt;&#8221;;<\/p>\n<p>while (!$rs-&gt;EOF)<br \/>\n{<br \/>\necho &#8220;&lt;td&gt;&#8221;;<br \/>\nfor ($i=0; $i &lt; $num_columns; $i++)<br \/>\n{<br \/>\necho &#8220;&lt;td&gt;&#8221; . $fld[$i]-&gt;value . &#8220;&lt;\/td&gt;&#8221;;<br \/>\n}<br \/>\necho &#8220;&lt;\/td&gt;&#8221;;<br \/>\n$rs-&gt;MoveNext();<br \/>\n}<\/p>\n<p>echo &#8220;&lt;\/table&gt;&#8221;;<\/p>\n<p>$rs-&gt;Close();<br \/>\n$conn-&gt;Close();<\/p>\n<p>$rs = null;<br \/>\n$conn = null;<br \/>\n?&gt;<br \/>\n&lt;\/source&gt;<\/p>\n<h6><span id=\"PDO.28PHP_Data_Objects.29_com_SQL_Server\" class=\"mw-headline\">PDO(PHP Data Objects) com SQL Server<\/span><\/h6>\n<p>Neste exemplo \u00e9 mostrado um script de conex\u00e3o utilizando\u00a0<strong>PDO(PHP Data Objects)<\/strong>. Lembrando que este exemplo funciona na vers\u00e3o 5.2 do PHP.<br \/>\nPara utiliza\u00e7\u00e3o em servidores\u00a0<strong>Windows 2008<\/strong>, \u00e9 necess\u00e1rio alterar a vers\u00e3o do php via web.config tendo em vista que a vers\u00e3o padr\u00e3o em windows 2008 \u00e9 a PHP 5.3:<\/p>\n<p><b>Arquivo: PDO_SQLserver.php<\/b><\/p>\n<p>&lt;?php<br \/>\ntry {<br \/>\n$hostname = &#8220;sqlserver01.bancodedados.com&#8221;;<br \/>\n$dbname = &#8220;nomebanco&#8221;;<br \/>\n$username = &#8220;nomebanco&#8221;;<br \/>\n$pw = &#8220;senha&#8221;;<br \/>\n$pdo = new PDO (&#8220;mssql:host=$hostname;dbname=$dbname&#8221;,&#8221;$username&#8221;,&#8221;$pw&#8221;);<br \/>\n} catch (PDOException $e) {<br \/>\necho &#8220;Erro de Conex\u00e3o &#8221; . $e-&gt;getMessage() . &#8220;\\n&#8221;;<br \/>\nexit;<br \/>\n}<br \/>\n$query = $pdo-&gt;prepare(&#8220;select Coluna FROM nome_tabela&#8221;);<br \/>\n$query-&gt;execute();<\/p>\n<p>for($i=0; $row = $query-&gt;fetch(); $i++){<br \/>\necho $i.&#8221; &#8211; &#8220;.$row[&#8216;Coluna&#8217;].&#8221;&lt;br\/&gt;&#8221;;<br \/>\n}<\/p>\n<p>unset($pdo);<br \/>\nunset($query);<br \/>\n?&gt;<\/p>\n<p>Conhe\u00e7a nosso servi\u00e7o de <a href=\"https:\/\/www.locaweb.com.br\/cloud\/cloud-hosting\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloud Hosting<\/a>!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Neste artigo voc\u00ea ver\u00e1 algumas formas de realizar a conex\u00e3o com seu Banco de Dados MS SQL Server atrav\u00e9s da sua aplica\u00e7\u00e3o PHP. Fun\u00e7\u00e3o mssql_connect( ) Arquivo: mssql.php Este exemplo lista todos os dados da consulta e efetua contagem dos registros, utilizando a fun\u00e7\u00e3o\u00a0mssql_connect( ). A mesma est\u00e1 habilitada em&#8230;<\/p>\n","protected":false},"author":242,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"ht-kb-category":[],"ht-kb-tag":[418],"class_list":["post-5466","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_tag-categoriahospedagem"],"_links":{"self":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/5466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/users\/242"}],"replies":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/comments?post=5466"}],"version-history":[{"count":7,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/5466\/revisions"}],"predecessor-version":[{"id":13666,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/5466\/revisions\/13666"}],"wp:attachment":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/media?parent=5466"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb-category?post=5466"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb-tag?post=5466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}