DBM no PHP
A maioria dos banco de dados com os quais você trabalha quando usa o PHP são relacionais.
Entratanto, os banco de dados DBM permitem que você acesse dados em uma relação de pares chave/valor, muito parecida com uma array associativa. Considere o seguinte exemplo:
O leitor mais astuto pode ter notado que esse é o nosso antigo amigo contador de acessos, mas em vez de usar um arquivo texto como a maioria das pessoas faria, usamos um banco de dados DBM simples.
É verdade que os banco de dados DBM não são poderosos. Entretanto, o que eles perdem em força ganham em disponibilidade e velocidade. A maioria dos sistemas UNIX carrega algum tipo de sistema DBM, e esses podem ser implementados com banco de dados de arquivos texto simples.
Agora que já temos uma noção de como funciona o DBM, vamos dar uma aprofundada melhor no assunto...
- Criando e Abrindo um banco de dados DBM
Quando você quiser criar e depois trabalhar com um banco de dados DBM, use a função dbmopen() com a flag "c" (para 'create'):
Como já foi mencionado na introdução, os sistemas DBM foram projetados para serem fáceis; eles estão, afinal, apenas um nível acima dos banco de dados de arquivo texto. Se você precisa criar um novo banco de dados DBM (e você tem um banco de dados DBM instalado), simplesmente precisa especificar a flag "c". O comando dbminsert pega uma variável com o resource do banco de dados ($dbh), uma chave ("last_access") e o valor dessa chave. Se você quisesse buscar o valor dessa chave, usaria a função dbmfetch();
$last_access apresentará agora a hora (em formato UNIX timestamp) em que o script foi invocado.
Bom galera, por enquanto é isso... espero que tenham gostado e que fiquem curiosos em saber o resto das funções do DBM, que realmente é muito bom e surpriendente...
Qualquer dúvida, envie um comentário abaixo!
[]'s
Entratanto, os banco de dados DBM permitem que você acesse dados em uma relação de pares chave/valor, muito parecida com uma array associativa. Considere o seguinte exemplo:
<?php $dbh = dbmopen("counter", "w"); $accesses = dbmfetch($dbh, "accessnum"); $accesses++; dbreplace($dbh, "accessnum", $accesses); dbmclose ?>
O leitor mais astuto pode ter notado que esse é o nosso antigo amigo contador de acessos, mas em vez de usar um arquivo texto como a maioria das pessoas faria, usamos um banco de dados DBM simples.
É verdade que os banco de dados DBM não são poderosos. Entretanto, o que eles perdem em força ganham em disponibilidade e velocidade. A maioria dos sistemas UNIX carrega algum tipo de sistema DBM, e esses podem ser implementados com banco de dados de arquivos texto simples.
Agora que já temos uma noção de como funciona o DBM, vamos dar uma aprofundada melhor no assunto...
- Criando e Abrindo um banco de dados DBM
Quando você quiser criar e depois trabalhar com um banco de dados DBM, use a função dbmopen() com a flag "c" (para 'create'):
<?php $dbh = dbmopen("newdb", "c") or die("Não foi possível criar o banco de dados DBM"); dbminsert(&dbh, "last_access", time()); dbmclose($dbh); ?>
Como já foi mencionado na introdução, os sistemas DBM foram projetados para serem fáceis; eles estão, afinal, apenas um nível acima dos banco de dados de arquivo texto. Se você precisa criar um novo banco de dados DBM (e você tem um banco de dados DBM instalado), simplesmente precisa especificar a flag "c". O comando dbminsert pega uma variável com o resource do banco de dados ($dbh), uma chave ("last_access") e o valor dessa chave. Se você quisesse buscar o valor dessa chave, usaria a função dbmfetch();
<?php $dbh = dbmopen("newdb", "c") or die("Não foi possível criar o banco de dados DBM"); $last_access = dbmfetch($dbh, "last_access"); dbmclose($dbh); ?>
$last_access apresentará agora a hora (em formato UNIX timestamp) em que o script foi invocado.
Bom galera, por enquanto é isso... espero que tenham gostado e que fiquem curiosos em saber o resto das funções do DBM, que realmente é muito bom e surpriendente...
Qualquer dúvida, envie um comentário abaixo!
[]'s
Essa foi ótima...huashuashuashuashuashuahsuashuahsuashuashuashuashuashuashuashuashuashuash
22/06/2004 8:54am
(~20 anos atrás)
Wellington, vai estudar antes de falar besteira!
A função dbmopen() é que não foi encontrada, ou seja, o PHP não foi compilado pra dar suporte às funções DBM.
Só isso.
A função dbmopen() é que não foi encontrada, ou seja, o PHP não foi compilado pra dar suporte às funções DBM.
Só isso.
05/11/2003 8:11pm
(~21 anos atrás)
Tente conferir o local do arquivo!!! Porque ele não achou o ses.php!
22/06/2003 6:33am
(~21 anos atrás)
Quando tentei usar o DBM deu o seguinte erro:
Fatal error: Call to undefined function: dbmopen() in c:\arquivos de programas\apache\htdocs\ses.php on line 5
O que devo fazer?
Fatal error: Call to undefined function: dbmopen() in c:\arquivos de programas\apache\htdocs\ses.php on line 5
O que devo fazer?
19/06/2003 1:04pm
(~21 anos atrás)