#39657 [Bgs]: The extended table-specification "database.table" creates errors
| From: | derick@php.net | Date: | Tue, 28 Nov 2006 09:39:43 +0000 |
| Subject: | #39657 [Bgs]: The extended table-specification "database.table" creates errors | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-105527@lists.php.net to get a copy of this message | ||
ID: 39657
Updated by: derick@php.net
Reported By: w dot kaiser at fortune dot de
Status: Bogus
Bug Type: MySQL related
Operating System: XP Pro
PHP Version: 4.4.4
New Comment:
select * from
db1021924-olc.olc_configuration;
vs.
select count(*) from db1021924-olc.olc_configuration;
Do you see the difference? Honestly, you're doing something wrong
yourself. It is neither a PHP problem nor a MySQL problem.
Previous Comments:
------------------------------------------------------------------------
[2006-11-28 09:30:02] w dot kaiser at fortune dot de
No, it is not!
I first reported the bug to the MySQL-group, but they proofed to me,
that MySQl handles the situation correctly!
This is what they sent to me:
===============================================
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 5.0.27-community-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database db1021924-olc;
Query OK, 1 row affected (0.00 sec)
mysql> use db1021924-olc;
Database changed
mysql> create table tb1 (id serial, col2 char(10));
Query OK, 0 rows affected (0.13 sec)
mysql> insert into tb1 (col2) values ("hello")
-> ;
Query OK, 1 row affected (0.03 sec)
mysql> select * from db1021924-olc.tb1;
+----+-------+
| id | col2 |
+----+-------+
| 1 | hello |
+----+-------+
1 row in set (0.00 sec)
------------------------------------------------------------------------
[2006-11-28 09:25:22] tony2001@php.net
The error message comes from MySQL client, which means it's not PHP
problem.
------------------------------------------------------------------------
[2006-11-28 06:29:59] w dot kaiser at fortune dot de
Forgot to mention, that MySQL itself can cope with this database-name,
so it must bee a PHP-problem!
------------------------------------------------------------------------
[2006-11-28 06:26:31] w dot kaiser at fortune dot de
Description:
------------
The extended table-specification "database.table" im SQL-queries
creates errors, if the the "database"-name contains a "-" (dash);
The error is:
"You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use
near '-olc.olc_configuration' at line 1"
A sample statement is "select count(*) from
db1021924-olc.olc_configuration"
A connect to the database "db1021924-olc" is possible with PHP, but
queries using the the extended table-specifications fail!
As we are using a "multi-db" approach in our application, and the ISP
dictates this type of database-name syntax, this is a real
show-stopper!
A database-name like "db1021924_olc" (using the underscore instead of
the dash) works fine!
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=39657&edit=1