Manual do PHP
Anterior |  | Próxima

# sqlite_open

(PHP 5)

sqlite_open -- Abre um banco de dados SQLite. Irá criar o banco de dados se ele não existir

## Descrição

resource sqlite_open ( string filename [, int mode [, string &error_message]] )

Retorna um recurso(conexão com o banco de dados) se funcionar, `FALSE` on error.

O parâmetro `filename` é o nome do banco de dados. Pode ser um caminho relativo ou absoluto para o arquivo que o sqlite irá usar para guardar os seus dados. Se o arquivo não existir, o sqlite tentará cria-lo. Você DEVE ter permissões de escrita para o arquivo caso você queira inserir dados ou modificar o seu banco de dados.

O parâmetro `mode` especifica o modo que o arquivo será aberto. A intenção é para ser usado para abrir o banco de dados em modo somente-leitura. Atualmente, este parâmetro é ignorado pela biblioteca sqlite. O valor padrão é o valor octal `0666` e este é o valor recomendado se você precisa usar o parâmetro `errmessage`.

`errmessage` é passado por referencia para conter uma mensagem de erro descritiva explicando porque o banco de dados não pôde ser aberto se houver um erro.

Exemplo 1. Exemplo sqlite_open()
`<?php if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) { sqlite_query('CREATE TABLE foo (bar varchar(10))'); sqlite_query("INSERT INTO foo VALUES ('fnord')"); $result = sqlite_query('select bar from foo'); var_dump(sqlite_fetch_array($result)); } else { die ($sqliteerror); } ?>`

> Dica: Em plataformas Unix, SQLite é sensível a scripts que usam a chamada do sistema fork(). Se você tem um script como esse, é recomendavel que você feche o banco de dados antes de usar o fork() e abra-o novamente no outro processo. Para maiores informações sobre isto, veja The C language interface to the SQLite library na seção entitulada `Multi-Threading And SQLite`.

> Dica: Não é recomentado trabalhar com banco de dados SQLite sobre partições NFS. Desde que NFS é notoriamente ruim quando se usa travas você vai achar que não pode abrir o banco de dados, e se abrir, o funcionamento das travas será indefinido.

> Nota: Apartir da versão 2.8.2 da biblioteca do SQLite, você pode especificar `:memory:` como o parâmetro `filename` para criar um banco de dados que vive somente na memória do computador. Isto é útil principalmente para processar algo temporário, já que o banco de dados na memória será destruidoas ao final do processo. Também pode ser útil quando usado com o SQL `ATTACH DATABASE` para abrir outros banco de dados e realizar uma query entre eles.

> Nota: SQLite é safe mode e a par do open_basedir.

Veja também sqlite_popen(), sqlite_close() e sqlite_query().

Anterior | Principal | Próxima
sqlite_num_rows | Acima | sqlite_popen