当前位置: 首页 > 面试题库 >

sql select语句给出列错误

唐俊楚
2023-03-14
问题内容

当我使用

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

我得到错误

错误1054:where子句中的未知列’U687678601’

但是当我键入

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

它工作正常。

我正在使用mysql。

我知道这是一个新手问题,但是谁能解释为什么会这样,我可以通过编程方式添加引号吗?通过代码添加引号是个好主意吗?

谢谢


问题答案:

当我们向SQL查询提供字符串/ varchar类型时,必须使用’‘指定它。对于非varchar类型,则无需提供“。这就是为什么当您写时您的查询工作正常

SELECT order_id fromorder where order_id='U687678601'

这表明您的order_id列包含varchar类型。因此,从现在开始,您应该将以下语法应用于SQL查询:

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

或者

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

并且还考虑到ORDER是保留关键字..因此,尝试将表名更改为其他名称,例如order_table,否则…



 类似资料:
  • 我在家庭作业中使用Eclipse,我真的很挣扎。目标是编写一个工资单程序,让用户输入他们的姓名、工作时间、工资率、联邦和州预扣税,然后输出他们预扣金额的计算信息以及他们的净工资。 我使用了我熟悉的println语句来显示输出,但老师希望我们使用函数,我根本无法让它工作。如果我使用println语句,所有的值都会填充,但由于某种原因,我无法让printf执行相同的操作。我错过了什么?如果我使用pri

  • 我正在尝试通过使用if else条件在我的代码中的textbox上添加验证 我在textbox上添加了focusListener,当我从textbox中删除焦点时,它将检查条件 我还在chekbox旁边创建了一个标签,它将根据条件显示文本 如果textbox中的文本不等于“Hi”,则应在textbox旁边的标签中打印“Hello 否则应打印“再见” 请帮忙

  • 我对if else语句有些问题,请支持

  • 所以我试图使用switch语句为位置x和位置y设置边界。我已经在下面提供了我的代码和错误信息。另外,我刚接触java,所以对我来说这可能是一个愚蠢的问题,但老实说,我目前不知道更好的问题。

  • 这很混乱,因为我的where子句确实使用了主键列。我知道我可以禁用安全模式作为我的脚本的一部分作为一个变通办法,但仍然想要理解为什么我会得到这个错误。如果可能的话,我希望避免不安全的更新。

  • 我得到了3个不同的错误:标识符预期,意外的令牌,未知的类:'score'。这些错误在第57-69行。 这个代码的重点是检查一个检查列表是否被检查,如果是,加1得分。它根据得分将输出文本更改为不同的字符串。 ^^XML代码^^