Database names with '-' must also be enclosed in [].
eg. if $databaseName = "my-database" must be selected as:
mssql_select_db('['.$databaseName.']', $connection);
mssql_select_db
(PHP 4, PHP 5, PECL odbtp >= 1.1.1)
mssql_select_db — Wählt eine MS SQL Datenbank aus
Beschreibung
mssql_select_db() setzt auf dem Server die aktuelle Datenbank, auf die sich die angegebene Verbindungskennung bezieht. Wurde keine Verbindungskennung angegeben, wird die zuletzt geöffnete Verbindung angenommen.
Jeder folgende Aufruf von mssql_query() bezieht sich auf die geöffnete Datenbank.
Parameter-Liste
- Datenbankname
-
Der Name der Datenbank
Um einen Datenbanknamen, der Leerzeichen, Bindestriche oder irgendwelche andere ungewöhnliche Zeichen enthält zu maskieren, muss er, wie im folgenden Beispiel gezeigt, in Klammern gesetzt werden. Diese Technik muss auch angewandt werden, wenn eine Datenbank ausgewählt wird, deren Name ein reserviertes Wort ist (wie z.B. primary).
- Verbindungskennung
-
Der von mssql_connect() oder mssql_pconnect() zurückgegebene Bezeichner einer MS SQL-Verbindung
Falls keine Verbindungskennung angegeben wird, wird von der zuletzt geöffneten Verbindung ausgegangen. Wenn es keine offene Verbindung gibt, versucht die Funktion eine Verbindung aufzubauen, als wäre mssql_connect() aufgerufen worden, und diese zu benutzen.
Rückgabewerte
Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.
Beispiele
Beispiel #1 mssql_select_db()-Beispiel
<?php
$verbindung = mssql_connect('MYSQLSERVER', 'sa', 'passwort');
mssql_select_db('[meine daten-bank]', $verbindung);
?>
Siehe auch
- mssql_connect() - Baut eine Verbindung zum MS SQL Server auf
- mssql_pconnect() - Baut eine persistente MS SQL Verbindung auf
- mssql_query() - Sendet eine MS SQL Anfrage
mssql_select_db
23-Sep-2008 05:00
20-Aug-2008 06:59
Use of square brackets to enclose the database name is also necessary if the name contains a dot: '.'
e.g.
mssql_select_db('Company.ERP');
Produces the error:
Warning: mssql_select_db(): Sybase: Server message: Could not locate entry in sysdatabases for database 'Company'. No entry found with that name. Make sure that the name is entered correctly. (severity 16, procedure N/A) in
mssql_select_db('[Company.ERP]');
Will select successfully
10-Feb-2008 03:15
mssql_select_db() seems to truncate the databasename at the length of 30 characters. In my example the following error occured:
mssql_select_db("VeryLongDatabaseNameWhichIsReallyLong", $this->dbConn);
Warning: mssql_select_db(): message: Could not locate entry in sysdatabases for database 'VeryLongDatabaseNameWhichIsRea'. No entry found with that na
me. Make sure that the name is entered correctly. (severity 16) in...
A shorter databasename solved this issue.
