Escape table name MySQL

后端 未结 3 593
情深已故
情深已故 2021-01-18 04:47

I have a little problem with escaping table name. I was so stupid that i choose \"show\" for the name of table. When I use mysqli connection the escaping works fine, but its

相关标签:
3条回答
  • 2021-01-18 05:13

    Section 9.3 of MySQL 5.1 Reference Manual says back ticks (`) or double quotes ("), however, I'd go with Fahim Parkar's comment above and just rename the table.

    Also worth noting, you must use ANSI_QUOTES SQL mode if using double quotes per Section 9.2:

    If the ANSI_QUOTES SQL mode is enabled, it is also permissible to quote identifiers within double quotation marks

    0 讨论(0)
  • 2021-01-18 05:16

    The problem is with YEAR not with SHOW. YEAR is a MySQL function. Best practice is to quote column and tables names all the time, makes things easy to read also.

    Should be:

    SELECT SQL_CALC_FOUND_ROWS `year`, `nameShow` 
    FROM   `show`
    LIMIT 0, 10
    
    0 讨论(0)
  • 2021-01-18 05:23

    Backticks should work fine

    try putting a comma after SQL_CALC_FOUND_ROWS,

    SELECT SQL_CALC_FOUND_ROWS, year, nameShow 
    FROM   `show`
    LIMIT 0, 10
    
    0 讨论(0)
提交回复
热议问题