downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

dbx_error> <dbx_compare
Last updated: Fri, 30 Oct 2009

view this page in

dbx_connect

(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_connectÖffnet eine Verbindung/Datenbank

Beschreibung

object dbx_connect ( mixed $module , string $host , string $database , string $username , string $password [, int $persistent ] )

Öffnet eine Verbindung zu einer Datenbank.

Parameter-Liste

module

Der Parameter module kann entweder einen String, oder eine Konstante enthalten, wobei letztere Form präferiert wird. Die möglichen Werte sind nachstehend aufgelistet, aber bedenken Sie bitte, dass diese nur funktionieren, wenn das Modul gerade geladen ist.

  • DBX_MYSQL oder "mysql"
  • DBX_ODBC oder "odbc"
  • DBX_PGSQL oder "pgsql"
  • DBX_MSSQL oder "mssql"
  • DBX_FBSQL oder "fbsql"
  • DBX_SYBASECT oder "sybase_ct"
  • DBX_OCI8 oder "oci8"
  • DBX_SQLITE oder "sqlite"

host

Der Host des SQL-Servers

database

Der Datenbankname

username

Der Username

password

Das Passwort

persistent

Der persistent -Parameter kann auf DBX_PERSISTENT gesetzt werden. In diesem Fall wird eine persistente Verbindung aufgebaut.

Die Parameter host , database , username und password werden erwartet, werden aber abhängig von den Verbindungsfunktionen für das abstrahierte Modul nicht immer verwendet.

Rückgabewerte

Gibt im Erfolgsfall ein Objekt, im Fehlerfall FALSE zurück. Wenn eine Verbindung hergestellt, jedoch keine Datenbank ausgewählt werden konnte, wird die Verbindung geschlossen und FALSE zurückgegeben.

Das zurückgegebene object hat drei Eigenschaften:

database
Der Name der aktuell ausgewählten Datenbank.
handle

Ein gültiges Handle für die verbundene Datenbank, und als solches kann es wenn nötig auch in modulspezifischen Funktionen verwendet werden.

<?php
$link 
dbx_connect(DBX_MYSQL"localhost""db""username""password");
mysql_close($link->handle); // dbx_close($link) wäre hier besser
?>

module
Die oben erwähnte Modulnummer. Wird ausschließlich dbx-intern verwendet.

Changelog

Version Beschreibung
5.0.0 DBX_SQLITE eingeführt.
4.3.0 DBX_OCI8 eingeführt.
4.2.0 DBX_SYBASECT eingeführt.
4.1.0 DBX_FBSQL eingeführt.

Beispiele

Beispiel #1 dbx_connect()-Beispiel

<?php
$link 
dbx_connect(DBX_ODBC"""db""username""password"DBX_PERSISTENT)
    or die(
"Fehler beim Verbinden");

echo 
"Verbindung hergestellt";
dbx_close($link);
?>

Anmerkungen

Hinweis: Konsultieren Sie bitte auch die modulspezifische Dokumentation.

Siehe auch

  • dbx_close() - Schließt eine offene Verbindung/Datenbank



dbx_error> <dbx_compare
Last updated: Fri, 30 Oct 2009
 
add a note add a note User Contributed Notes
dbx_connect
Anonymous
06-Dec-2007 07:58
If you get an error:
"Error while trying to retrieve text for error ORA-12154"
means that you didn't set the ORACLE_HOME, TNS_ADMIN and ORACLE_BASE variable.
If you are sure it's set as a system variable, you could solve the problem by use:
putenv('ORACLE_HOME=/your/oracle/home/beforebin');
Jon Moss
04-Mar-2005 02:50
I have been using dbx for a product at work and the need to use SQLite as a database popped up. However, I couldn't find any references to using it with dbx other than that you could and since SQLite doesn't seem to do the username password thing I was a little confused as to how to use it in dbx.

With a little research it seems that when using dbx_connect you only need to fill in the module name ('DBX_SQLITE') and the database (the file name for the database!) to get it working. e.g.

$link = dbx_connect(DBX_SQLITE, "", "some.db", "", "");

thought someone might find it useful, especially since it no longer required additional dll's in version 5.x
editor at plummi dot de
26-Jan-2005 01:44
Pear:DB ist a great Idea, but it`s heavy and slower. I`ve tested dbx and Pear:DB with MySQL 4.0.23_Debian-1-log.

With Pear the Script used around 500 KiB of Memory and needed about 0.15s to 0.25s to complete.
With dbx it used around 80 KiB of Memory and needed around 0.09s to 0.11s to complete!

For ME, dbx is absolutly the best abstraktion around! :-)
Nice Work!!

Sascha Plumhoff
BDKR at melnabone at mindless dt com
07-Dec-2002 06:18
The advantage that this has over Pear, Adob, and even Eclipse is speed. As some one put elsewhere,

"Yes, there is an advantage: Speed!
ext/dbx is written in C and has to be compiled into PHP. It's just faster then the PEAR classes."

Cheers,
BDKR
webmaster at wizactive dot com
22-Feb-2002 02:39
ADOdb seems to be the best db-abstraction library in PHP. It's very fast also. You can get it from ADOdb homepage @ http://php.weblogs.com/adodb/
mboeren at php dot net
19-Feb-2002 12:35
The pgsql connecting as nobody if you don't supply a password issue has been solved in CVS.
davidbullock at tech-center dot com
07-Jan-2002 06:01
Currently to connect to the PostgreSQL backend, you have to supply both a username, and a password or the dbx pgsql module attempts to connect as "nobody".
jeremy at deadbeef dot com
23-Jul-2001 08:54
Pear::DB seems like a better idea than this.  See http://pear.php.net

dbx_error> <dbx_compare
Last updated: Fri, 30 Oct 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites