Unsupported Screen Size: The viewport size is too small for the theme to render properly.

Forum Replies Created

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • in reply to: connection to a database with invalid name #14352
    olivierf77
    Member

    Dear Nero,

    I agree with you.

    I just wrote again to my host, and kindly asked him to reconsider his stupid naming scheme, and/or to point to any working MySql Client program.

    I do not expect very much though.

    If I do not have a reasonable answer, I will consider switching.

    I appreciate them because online.fr is very reasonably priced (30 EUR/year)

    offers 5 email addresses, unlimited alias email, PHP 4.3.1, Mysql 3.x (but with a stupid database name), webmail access, and since a few weeks, secured payment.

    I started a new thread for a suggestion related to this topic.

    Best Regards

    Olivier

    in reply to: connection to a database with invalid name #14350
    olivierf77
    Member

    dear Nero

    Thank you for your help on this matter, and for your suggestions. I tried`to connect as you suggested with

    Code:
    select `myname.cc`.`tb_first`;

    but either SQLyog or MySql refused with error 1103: incorrect table name.

    It was worth trying though.

    As regards the caracter used as a separator, your comments are quite pertinent, and I am aware that this trick was used for DOS filenames and directories, but this is not the case here.

    The separator used is indeed the period ('.').

    I am quite aware that this is completely illegal, under reference manual 6.1.2

    —- Start extract

    6.1.2 Database, Table, Index, Column, and Alias Names

    Database, table, index, column, and alias names all follow the same

    rules in MySQL.

    Note that the rules changed starting with MySQL Version 3.23.6 when

    we introduced quoting of identifiers (database, table, and column

    names) with “'. `”' will also work to quote identifiers if you run

    in ANSI mode. See section 1.7.2 Running MySQL in ANSI Mode.

    Identifier – Max length – Allowed characters

    – Database 64 Any character that is allowed in a directory name except `/', `' or `.'.

    – Table 64 Any character that is allowed in a file name, except `/' or `.'.

    – Column 64 All characters.

    – Alias 255 All characters.

    Note that in addition to the above, you can't have ASCII(0) or ASCII(255) or the quoting character in an identifier.

    …..

    You cannot use the `.' character in names because it is used to

    extend the format by which you can refer to columns (see immediately

    below).


    End extract

    I emailed this part to Online.net support, and their answer was (translation):

    > Problem: Acoording to MySql norm 6.1.2 , joined hereafter here, the

    >character '.' is forbidden for use in a database name

    Answer: we modified the norm for our own needs. We host 50 000 customers this way, and it never created any problems.

    > Result: no GUI frontend is available to easily manage the data on your site

    Answer:

    Wrong

    I am not making up their answer.

    At first I could not believe my eyes when I read their answer.

    If I cannot solve this problem from the GUI end, I will try again to contact them (by email, since they offer absolutely no phone contact), but by the tone of their answer, I have a sinking feeling in my stomach that they could not care less about customer service. How do you say “go to hell?”.

    Also, running in ANSI mode will not solve the problem.

    Olivier

    in reply to: connection to a database with invalid name #14346
    olivierf77
    Member

    Dear Ritesh

    History tab content, with my comments prefixed by —

    — user comments: initialization

    [15:20:16][ 60 ms] show databases

    [15:20:19][ 60 ms] use `myname.cc`

    [15:20:19][ 70 ms] use “

    [15:20:19][ 60 ms] use “

    — => displaying msg err 1045

    — issuing order manually

    [15:21:05][ 70 ms] use `myname.cc`

    [15:21:05][ 60 ms] select database()

    — => success

    — issuing order manually

    [15:23:12][ 60 ms] show tables

    — => success

    [15:24:03][ 491 ms] select * from tb_first

    — => success

    [15:26:21][ 60 ms] select * from `myname.cc`.tb_first

    — => failure. errmsg:

    — Error code 1103

    — Incorrect table name 'tb_first'

    — (60 ms taken)

    And, once again, the problem is not in your program, but in their very poor choice of a databasename.

    BTW, PhpAdmin installed on their site (rel 2.2.42) accepts data and/or structure dump orders, on their database, but a more recent release (2.5.0) installed on my computer, fails to get any value or list dump.

    Best Regards

    Olivier

    in reply to: connection to a database with invalid name #14344
    olivierf77
    Member

    Dear Ritesh

    Thank you for your quick answer.

    The Mysql my host is providing is:

    OS=Debian GNU/Linux version unknown

    Apache 1.x

    MySql 3.23.52 (AFAIK latest 3.x release)

    Php 4.3.1

    All in all, a rather modern and up to date setup

    my domain name is of the form 'myname.cc'. myname is another string, but it is irrelevant to the problem. 'cc' is another tld, such as fr, edu or com.

    The single database provided by my host is:

    host name='sql.myname.cc', => ok

    user name='myname.cc', => ok

    databasename='myname.cc' => NOT OK at ALL

    password='xxx'. => OK

    (also, accessing internet through: easynet.fr, a very good ADSL ISP, with great newsgroups).

    I am running locally with

    Windows XP SP 1 latest patches

    Apache 2.0.45 (latest release)

    MySql 4.0.12-nt – localhost via TCP/IP

    When logging to host site, errmsg is:

    Quote:
    Err no 1045

    Access denied for user: '[email protected]' (using password: YES)

    then another errmsg:

    Quote:
    Could not refresh ObjectBrowser

    then on the left panel, I see:

    as the host, but no database available.

    if I type in the top right panel:

    Code:
    use myname.cc;

    answer in lower right panel is:

    Quote:
    Error Code : 1064

    You have an error in your SQL syntax near '.cc' at line 1

    (60 ms taken)

    but an order with back-ticks:

    Code:
    use `myname.cc`;

    => SUCCESS !!:

    Quote:
    (0 row(s) affected)

    (60 ms taken)

    the database has indeed been successfully connected, since the order

    Code:
    show tables;

    => OK: displays the right tables in lower panel.

    However, the database is still not shown as connected, since the program has no way

    to realize that connection is now fully made. I understand that this is not a bug.

    Also, when connect, I can issue the order

    Code:
    show tables;
    select * from mytable;

    => OK. results displayed.

    but:

    Code:
    select * from `myname.cc`.mytable;

    will fail with errmsg:

    Quote:
    Error Code : 1103

    Incorrect table name 'mytable'

    (60 ms taken)

    Also, probably, when synchronizing tables, I guess that the order 'use database_name;' cannot be issued by itself, but is probably issued for each order, as a prefix to each table_name and field name.

    Finally, here are a few local tests: I created locally a folder with a name including a period: 'foo.cc', and copied a full small database in it.

    SQLyog refused to link to it, since the database name is the name of the folder, and

    this name is illegal. errmsg is:

    Quote:
    error 1102

    Incorrect database name 'foo.cc”.

    in this specific case, even issuing theorder with the name between back-ticks does not

    work and generates the same errcode and msg (though it is displayed in the lower panel, and no more as a pop-up errmsg):

    Code:
    use `foo.cc`;

    =>

    Quote:
    error 1102

    Incorrect database name 'foo.cc”.

    So the SQLyog behavior is slightly different on my local database (mysql 4.0.12 on Windows XP) than on the hosted database (Mysql 3.23.52 on Linux).

    I hope this information is precise enough for you to understand my problem.

    As I already said, definitely NOT the fault of SQLyog, but the fault of my host, who is quite un-cooperative on this specific field. Apart from this, good service, at a very reasonable price.

    Once again, if you cannot take into account this non-standard behavior, I will definitely NOT say or even think anything wrong about your program. Many thanks again for providing it. Locally it is great.

    Best Regards

    Olivier

Viewing 4 posts - 1 through 4 (of 4 total)