{"id":9059,"date":"2023-01-21T16:32:51","date_gmt":"2023-01-21T19:32:51","guid":{"rendered":"https:\/\/ajuda.locaweb.com.br\/?post_type=ht_kb&#038;p=9059"},"modified":"2023-01-26T10:35:44","modified_gmt":"2023-01-26T13:35:44","slug":"tudo-sobre-o-php-data-object-pdo-hospedagem-de-sites","status":"publish","type":"ht_kb","link":"https:\/\/www.locaweb.com.br\/ajuda\/wiki\/tudo-sobre-o-php-data-object-pdo-hospedagem-de-sites\/","title":{"rendered":"Tudo sobre o PHP Data Object PDO &#8211; Hospedagem de Sites"},"content":{"rendered":"    \t\t<div class=\"hts-messages hts-messages--info  hts-messages--withtitle hts-messages--withicon \"   >\r\n    \t\t\t<span class=\"hts-messages__title\"><b>Informa\u00e7\u00e3o!<\/b><\/span>    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\t<a href=\"http:\/\/www.php.net\/manual\/en\/book.pdo.php\" target=\"_blank\" rel=\"noopener noreferrer\">PDO(PHP Data Objects)<\/a> \u00e9 um m\u00f3dulo de PHP montado sob o paradigma Orientado a Objetos, cujo objetivo \u00e9 prover uma padroniza\u00e7\u00e3o da forma com que PHP se comunica com um banco de dados relacional.    \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<ul>\n<li>Este m\u00f3dulo surgiu a partir da vers\u00e3o 5 de PHP. PDO, portanto, \u00e9 uma interface que define um conjunto de classes e a assinatura dos m\u00e9todos de comunica\u00e7\u00e3o com uma base de dados.<\/li>\n<\/ul>\n<h6>Por que usar PDO<\/h6>\n<ul>\n<li>Antes da chegada do PDO, a linguagem PHP oferecia suporte \u00e0 comunica\u00e7\u00e3o com diferentes modelos de SGBD atrav\u00e9s de m\u00f3dulos espec\u00edficos.<\/li>\n<li>A maioria deles provia uma biblioteca de fun\u00e7\u00f5es e utilizava um resource para representar a conex\u00e3o e outro para representar um resultset (o resultado de uma consulta). As opera\u00e7\u00f5es eram feitas sobre as vari\u00e1veis de resource.<\/li>\n<li>Cada driver implementava suas opera\u00e7\u00f5es conforme imaginavam ser mais adequados. Embora alguns deles tivessem um funcionamento semelhante, a ordem dos par\u00e2metros nem sempre era a mesma e podia causar uma certa confus\u00e3o entre programadores.<\/li>\n<\/ul>\n<h6>Como conectar a um banco MySQL usando PDO<\/h6>\n<ul>\n<li>Testando a conex\u00e3o<\/li>\n<\/ul>\n<pre class=\"de1\"> <span class=\"kw2\">&lt;?php<\/span>\r\n  <span class=\"re0\">$banco<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st_h\">'mysql:host=localhost;dbname=nome_do_banco'<\/span><span class=\"sy0\">,<\/span> <span class=\"st_h\">'username'<\/span><span class=\"sy0\">,<\/span><span class=\"st_h\">'password'<\/span><span class=\"br0\">)<\/span>or <span class=\"kw1\">print<\/span> <span class=\"br0\">(<\/span><span class=\"kw3\">mysql_error<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"kw1\">print<\/span> <span class=\"st0\">\"Conex\u00e3o Efetuada com sucesso!\"<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"sy1\">?&gt;<\/span><\/pre>\n<ul>\n<li>Incluir dados<\/li>\n<\/ul>\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\n  <span class=\"re0\">$banco<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st_h\">'mysql:host=localhost;dbname=nome_do_banco'<\/span><span class=\"sy0\">,<\/span> <span class=\"st_h\">'username'<\/span><span class=\"sy0\">,<\/span><span class=\"st_h\">'password'<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"re0\">$novo_cliente<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw3\">array<\/span><span class=\"br0\">(<\/span><span class=\"st_h\">'nome'<\/span><span class=\"sy0\">=&gt;<\/span><span class=\"st_h\">'Jos\u00e9'<\/span><span class=\"sy0\">,<\/span><span class=\"st_h\">'departamento'<\/span><span class=\"sy0\">=&gt;<\/span><span class=\"st_h\">'TI'<\/span><span class=\"sy0\">,<\/span><span class=\"st_h\">'unidade'<\/span><span class=\"sy0\">=&gt;<\/span><span class=\"st_h\">'Paulista'<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"re0\">$banco<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">prepare<\/span><span class=\"br0\">(<\/span><span class=\"st_h\">'INSERT INTO clientes (nome,departamento,unidade) VALUES (:nome,:departamento,:unidade)'<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">execute<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$novo_cliente<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"sy1\">?&gt;<\/span><\/pre>\n<h6>Pesquisar dados em base MySQL utilizando querys simples e stored procedures<\/h6>\n<ul>\n<li>Neste exemplo, \u00e9 poss\u00edvel efetuar pesquisas em bases MySQL utilizando querys e stored procedures. Lembrando que para evitar conflitos, teste sua procedure antes de implement\u00e1-la em sua aplica\u00e7\u00e3o.<\/li>\n<\/ul>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\n\u00a0\r\n<span class=\"co1\">\/\/Dados de acesso<\/span>\r\n<span class=\"re0\">$host<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"Nome_do_Host\"<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"re0\">$dbn<\/span>  <span class=\"sy0\">=<\/span> <span class=\"st0\">\"Nome_da_Base\"<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"re0\">$user<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"Nome_do_Usu\u00e1rio\"<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"re0\">$pass<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"Senha_da_Base\"<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"re0\">$tabela<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"Nome_da_Tabela\"<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\ntry\r\n<span class=\"br0\">{<\/span>\r\n\t<span class=\"co1\">\/\/Conectar<\/span>\r\n\t<span class=\"re0\">$ligacao<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st0\">\"mysql:dbname=<span class=\"es4\">$dbn<\/span>; host=<span class=\"es4\">$host<\/span>\"<\/span><span class=\"sy0\">,<\/span> <span class=\"re0\">$user<\/span><span class=\"sy0\">,<\/span> <span class=\"re0\">$pass<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\t<span class=\"re0\">$ligacao<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">setAttribute<\/span><span class=\"br0\">(<\/span>PDO<span class=\"sy0\">::<\/span><span class=\"me2\">ATTR_ERRMODE<\/span><span class=\"sy0\">,<\/span> PDO<span class=\"sy0\">::<\/span><span class=\"me2\">ERRMODE_EXCEPTION<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n\t<span class=\"co1\">\/\/Em caso de pesquisas, via procedures<\/span>\r\n\t<span class=\"co1\">\/\/$pesq = \"\";<\/span>\r\n\t<span class=\"co1\">\/\/$sql = \"CALL Nome_da_procedure()\";<\/span>\r\n\u00a0\r\n\t<span class=\"co1\">\/\/Em caso de querys<\/span>\r\n\t<span class=\"re0\">$pesq<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"Nome_do_Campo\"<\/span><span class=\"sy0\">;<\/span>\r\n\t<span class=\"re0\">$sql<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"SELECT * FROM <span class=\"es4\">$tabela<\/span> WHERE nome=\u00a0:nome_param\"<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n\t<span class=\"re0\">$resultados<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$ligacao<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">prepare<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$sql<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n\t<span class=\"co1\">\/\/Defini\u00e7\u00e3o de par\u00e2metros<\/span>\r\n\t<span class=\"re0\">$resultados<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">bindParam<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\":nome_param\"<\/span><span class=\"sy0\">,<\/span> <span class=\"re0\">$pesq<\/span><span class=\"sy0\">,<\/span> PDO<span class=\"sy0\">::<\/span><span class=\"me2\">PARAM_STR<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\t<span class=\"re0\">$resultados<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">execute<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n\t<span class=\"kw1\">echo<\/span><span class=\"st_h\">'&lt;p&gt;'<\/span><span class=\"sy0\">.<\/span><span class=\"re0\">$sql<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">'&lt;\/p&gt;&lt;hr&gt;'<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n\t<span class=\"kw1\">foreach<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$resultados<\/span> <span class=\"kw1\">as<\/span> <span class=\"re0\">$linha<\/span><span class=\"br0\">)<\/span>\r\n\t<span class=\"br0\">{<\/span>\r\n\t\t<span class=\"kw1\">echo<\/span> <span class=\"st_h\">'&lt;p&gt;'<\/span><span class=\"sy0\">;<\/span>\r\n\t\t<span class=\"co1\">\/\/Nome do campo na tabela pesquisada<\/span>\r\n\t\t<span class=\"kw1\">echo<\/span> <span class=\"re0\">$linha<\/span><span class=\"br0\">[<\/span><span class=\"st0\">\"Nome_da_Coluna\"<\/span><span class=\"br0\">]<\/span><span class=\"sy0\">;<\/span>\r\n\t\t<span class=\"kw1\">echo<\/span> <span class=\"st_h\">'&lt;\/p&gt;'<\/span><span class=\"sy0\">;<\/span>\r\n\t<span class=\"br0\">}<\/span>\r\n\u00a0\r\n\t<span class=\"kw1\">echo<\/span> <span class=\"st_h\">'&lt;hr&gt;&lt;p&gt;Resultados: '<\/span><span class=\"sy0\">.<\/span><span class=\"re0\">$resultados<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">rowCount<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">.<\/span><span class=\"st_h\">'&lt;\/p&gt;'<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n\t<span class=\"co1\">\/\/Desconectar<\/span>\r\n\t<span class=\"re0\">$ligacao<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw4\">null<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"br0\">}<\/span>\r\ncatch<span class=\"br0\">(<\/span>PDOException <span class=\"re0\">$erro<\/span><span class=\"br0\">)<\/span>\r\n<span class=\"br0\">{<\/span>\r\n\t<span class=\"kw1\">echo<\/span> <span class=\"re0\">$erro<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">getMessage<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"br0\">}<\/span>\r\n\u00a0\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<h6>Conectar um banco SQL Server usando PDO<\/h6>\n<h6>Windows<\/h6>\n<ul>\n<li>Este exemplo funciona na vers\u00e3o 5.2 do PHP. Para utiliza\u00e7\u00e3o em servidores Windows 2008, h\u00e1 de 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.<\/li>\n<\/ul>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\ntry <span class=\"br0\">{<\/span>\r\n    <span class=\"re0\">$hostname<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"sqlserver01.bancodedados.com\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$dbname<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"nomebanco\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$username<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"nomebanco\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$pw<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"senha\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$pdo<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO <span class=\"br0\">(<\/span><span class=\"st0\">\"mssql:host=<span class=\"es4\">$hostname<\/span>;dbname=<span class=\"es4\">$dbname<\/span>\"<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">\"<span class=\"es4\">$username<\/span>\"<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">\"<span class=\"es4\">$pw<\/span>\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"br0\">}<\/span> catch <span class=\"br0\">(<\/span>PDOException <span class=\"re0\">$e<\/span><span class=\"br0\">)<\/span> <span class=\"br0\">{<\/span>\r\n    <span class=\"kw1\">echo<\/span> <span class=\"st0\">\"Erro de Conex\u00e3o \"<\/span> <span class=\"sy0\">.<\/span> <span class=\"re0\">$e<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">getMessage<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span> <span class=\"sy0\">.<\/span> <span class=\"st0\">\"<span class=\"es1\">\\n<\/span>\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"kw3\">exit<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"br0\">}<\/span>\r\n      <span class=\"re0\">$query<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$pdo<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">prepare<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"select Coluna FROM nome_tabela\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n      <span class=\"re0\">$query<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">execute<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n      <span class=\"kw1\">for<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$i<\/span><span class=\"sy0\">=<\/span><span class=\"nu0\">0<\/span><span class=\"sy0\">;<\/span> <span class=\"re0\">$row<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$query<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">fetch<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span> <span class=\"re0\">$i<\/span><span class=\"sy0\">++<\/span><span class=\"br0\">)<\/span><span class=\"br0\">{<\/span>\r\n        <span class=\"kw1\">echo<\/span> <span class=\"re0\">$i<\/span><span class=\"sy0\">.<\/span><span class=\"st0\">\" - \"<\/span><span class=\"sy0\">.<\/span><span class=\"re0\">$row<\/span><span class=\"br0\">[<\/span><span class=\"st_h\">'Coluna'<\/span><span class=\"br0\">]<\/span><span class=\"sy0\">.<\/span><span class=\"st0\">\"&lt;br\/&gt;\"<\/span><span class=\"sy0\">;<\/span>\r\n      <span class=\"br0\">}<\/span>\r\n\u00a0\r\n      <span class=\"kw3\">unset<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$pdo<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span> \r\n      <span class=\"kw3\">unset<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$query<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<h6>Linux<\/h6>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\ntry <span class=\"br0\">{<\/span>\r\n    <span class=\"re0\">$hostname<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"sqlserver01.bancodedados.com\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$dbname<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"nomebanco\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$username<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"nomebanco\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$pw<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"senha\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"re0\">$pdo<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO <span class=\"br0\">(<\/span><span class=\"st0\">\"dblib:host=<span class=\"es4\">$hostname<\/span>;dbname=<span class=\"es4\">$dbname<\/span>\"<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">\"<span class=\"es4\">$username<\/span>\"<\/span><span class=\"sy0\">,<\/span><span class=\"st0\">\"<span class=\"es4\">$pw<\/span>\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"br0\">}<\/span> catch <span class=\"br0\">(<\/span>PDOException <span class=\"re0\">$e<\/span><span class=\"br0\">)<\/span> <span class=\"br0\">{<\/span>\r\n    <span class=\"kw1\">echo<\/span> <span class=\"st0\">\"Erro de Conex\u00e3o \"<\/span> <span class=\"sy0\">.<\/span> <span class=\"re0\">$e<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">getMessage<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span> <span class=\"sy0\">.<\/span> <span class=\"st0\">\"<span class=\"es1\">\\n<\/span>\"<\/span><span class=\"sy0\">;<\/span>\r\n    <span class=\"kw3\">exit<\/span><span class=\"sy0\">;<\/span>\r\n  <span class=\"br0\">}<\/span>\r\n      <span class=\"re0\">$query<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$pdo<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">prepare<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"select Coluna FROM nome_tabela\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n      <span class=\"re0\">$query<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">execute<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n      <span class=\"kw1\">for<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$i<\/span><span class=\"sy0\">=<\/span><span class=\"nu0\">0<\/span><span class=\"sy0\">;<\/span> <span class=\"re0\">$row<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$query<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">fetch<\/span><span class=\"br0\">(<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span> <span class=\"re0\">$i<\/span><span class=\"sy0\">++<\/span><span class=\"br0\">)<\/span><span class=\"br0\">{<\/span>\r\n        <span class=\"kw1\">echo<\/span> <span class=\"re0\">$i<\/span><span class=\"sy0\">.<\/span><span class=\"st0\">\" - \"<\/span><span class=\"sy0\">.<\/span><span class=\"re0\">$row<\/span><span class=\"br0\">[<\/span><span class=\"st_h\">'Coluna'<\/span><span class=\"br0\">]<\/span><span class=\"sy0\">.<\/span><span class=\"st0\">\"&lt;br\/&gt;\"<\/span><span class=\"sy0\">;<\/span>\r\n      <span class=\"br0\">}<\/span>\r\n\u00a0\r\n      <span class=\"kw3\">unset<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$pdo<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span> \r\n      <span class=\"kw3\">unset<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$query<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<h6>Como conectar a um banco SQLite3 via PDO<\/h6>\n<ul>\n<li>Os seguintes passos demonstram como se conectar a um banco SQLite3, como criar tabelas, inserir dados e visualizar dados de uma tabela via PDO.<\/li>\n<li>Conectar \u00e0 base<\/li>\n<\/ul>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\n<span class=\"co1\">\/\/Atribui um novo objeto com o banco criado anteriormente<\/span>\r\n<span class=\"co1\">\/\/Supondo que o arquivo do banco de dados (banco.db) esteja ou ser\u00e1 criado no mesmo diret\u00f3rio que o do php; <\/span>\r\n<span class=\"co1\">\/\/mas pode indicar um outro diret\u00f3rio tamb\u00e9m. <\/span>\r\n<span class=\"co1\">\/\/Ex: $db = new PDO(\"sqlite:~\/public_hmtl\/banco.db\"); - conforme sua necessidade<\/span>\r\n\u00a0\r\n<span class=\"re0\">$db<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st0\">\"sqlite:banco.db\"<\/span><span class=\"br0\">)<\/span> or <span class=\"kw3\">die<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"Erro ao abrir a base\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<ul>\n<li>Criar tabelas<\/li>\n<\/ul>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\n<span class=\"re0\">$db<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st0\">\"sqlite:banco.db\"<\/span><span class=\"br0\">)<\/span> or <span class=\"kw3\">die<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"Erro ao abrir a base\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"co1\">\/\/cria a tabela<\/span>\r\n<span class=\"re0\">$sqlC<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"CREATE TABLE suporte ( id INTEGER PRIMARY KEY, nome TEXT)\"<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"re0\">$db<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"kw3\">exec<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$sqlC<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<ul>\n<li>Inserir dados em uma tabela<\/li>\n<\/ul>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\n\u00a0\r\n<span class=\"re0\">$db<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st0\">\"sqlite:banco.db\"<\/span><span class=\"br0\">)<\/span> or <span class=\"kw3\">die<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"Erro ao abrir a base\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"co1\">\/\/insere os dados<\/span>\r\n<span class=\"re0\">$sqlI<\/span> <span class=\"sy0\">=<\/span> <span class=\"st0\">\"INSERT INTO suporte (id, nome) VALUES (NULL, 'Arielton Santos')\"<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"re0\">$stmt<\/span> <span class=\"sy0\">=<\/span> <span class=\"re0\">$db<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"kw3\">exec<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$sqlI<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<ul>\n<li>Visualizar dados de uma tabela<\/li>\n<\/ul>\n<div class=\"well\">\n<div class=\"mw-geshi mw-code mw-content-ltr\" dir=\"ltr\">\n<div class=\"php source-php\">\n<pre class=\"de1\"><span class=\"kw2\">&lt;?php<\/span>\r\n\u00a0\r\n<span class=\"re0\">$db<\/span> <span class=\"sy0\">=<\/span> <span class=\"kw2\">new<\/span> PDO<span class=\"br0\">(<\/span><span class=\"st0\">\"sqlite:banco.db\"<\/span><span class=\"br0\">)<\/span> or <span class=\"kw3\">die<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"Erro ao abrir a base\"<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n\u00a0\r\n<span class=\"co1\">\/\/visualiza<\/span>\r\n<span class=\"kw1\">foreach<\/span> <span class=\"br0\">(<\/span><span class=\"re0\">$db<\/span><span class=\"sy0\">-&gt;<\/span><span class=\"me1\">query<\/span><span class=\"br0\">(<\/span><span class=\"st0\">\"SELECT id, nome FROM suporte\"<\/span><span class=\"br0\">)<\/span> <span class=\"kw1\">as<\/span> <span class=\"re0\">$row<\/span><span class=\"br0\">)<\/span> <span class=\"br0\">{<\/span>\r\n<span class=\"kw3\">print_r<\/span><span class=\"br0\">(<\/span><span class=\"re0\">$row<\/span><span class=\"br0\">)<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"kw1\">echo<\/span> <span class=\"st0\">\"&lt;br&gt;\"<\/span><span class=\"sy0\">;<\/span>\r\n<span class=\"br0\">}<\/span>\r\n\u00a0\r\n<span class=\"sy1\">?&gt;<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n    \t\t<div class=\"hts-messages hts-messages--alert  hts-messages--withtitle hts-messages--withicon \"   >\r\n    \t\t\t<span class=\"hts-messages__title\"><b>Observa\u00e7\u00e3o!<\/b><\/span>    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\tO c\u00f3digo mencionado acima \u00e9 somente um exemplo. Caso haja d\u00favidas quanto sua utiliza\u00e7\u00e3o, sugerimos que verifique juntamente a 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    \t\t<div class=\"hts-messages hts-messages--info  hts-messages--withtitle hts-messages--withicon \"   >\r\n    \t\t\t<span class=\"hts-messages__title\"><b>Conhe\u00e7a!<\/b><\/span>    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\tAproveite e conhe\u00e7a outros produtos da Locaweb, como o Clic Lead, <a href=\"https:\/\/www.locaweb.com.br\/clic-lead\/\" target=\"_blank\" rel=\"noopener noreferrer\">clique aqui<\/a> e saiba mais!    \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","protected":false},"excerpt":{"rendered":"<p>Este m\u00f3dulo surgiu a partir da vers\u00e3o 5 de PHP. PDO, portanto, \u00e9 uma interface que define um conjunto de classes e a assinatura dos m\u00e9todos de comunica\u00e7\u00e3o com uma base de dados. Por que usar PDO Antes da chegada do PDO, a linguagem PHP oferecia suporte \u00e0 comunica\u00e7\u00e3o com&#8230;<\/p>\n","protected":false},"author":6,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"ht-kb-category":[119],"ht-kb-tag":[418],"class_list":["post-9059","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-hospedagem-de-sites","ht_kb_tag-categoriahospedagem"],"_links":{"self":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/9059","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\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/comments?post=9059"}],"version-history":[{"count":22,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/9059\/revisions"}],"predecessor-version":[{"id":29588,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/9059\/revisions\/29588"}],"wp:attachment":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/media?parent=9059"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb-category?post=9059"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb-tag?post=9059"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}