我正在编写一个利用Derby管理车辆数据库的Java程序。每辆车的唯一标识符是17个字符的VIN。对于这个特定的查询,我想要的结果是获得make,例如'Ford':
SELECT make FROM VehicleData where vin = 1HSRDG2RXJH584627
我收到此错误:
----- SQLException -----
SQL State: 42X01
Error Code: 30000
Message: Syntax error: Encountered "HSRDG2RXJH584627" at line 1, column 43.
似乎忽略了WHERE子句中VIN中的前导'1'。这是为什么?
答案 0 :(得分:0)
我不得不把VIN放在引号中。在Java中,引号必须被转义:
"SELECT make FROM VehicleData where vin = \"1HSRDG2RXJH584627\""