Search code examples
mysqlsqlmysql-error-1054

sql select statement giving column error


When i use

SELECT order_id from `order` where `order_id`=U687678601

i get error

ERROR 1054: Unknown Column 'U687678601' in where clause

but when i type

SELECT order_id from`order` where `order_id`='U687678601'

it works fine..

I am using mysql.

I know its a novice question but can anyone explain why this is happening and can i add quotes programmatically and is it a good idea to add quote through code

Thanks


Solution

  • When we are supplying a string/varchar type to the SQL query we must specify it with the ''. and for the non varchar types no need to supply ''. Thats why your query works fine when u write

    SELECT order_id fromorder where order_id='U687678601'
    

    this shows that your order_id column contains the varchar type. so from now you should apply the following syntax to the SQL query:

    SELECT column_name,..... FROM table WHERE column_name = 'varchar_value'
    

    or

    SELECT column_name,..... FROM table WHERE column_name = nonvarchar_value.
    

    and also consider that the ORDER is the reserved keyword .. so try to change the table name to other like order_table or else...