【问题标题】:Tomcat6 MySQL Unknown column in 'field list'"'字段列表'中的 Tomcat6 MySQL 未知列"
【发布时间】:2013-01-27 04:43:04
【问题描述】:

我在使用 Tomcat6 和 MySQL 的 RedHat 中工作,如果遇到问题,我会感谢您的帮助,我有一个连接到我的数据库的 servlet,好吧,我向我的 servlet 和 servlet 发送了一个 sql“字符串”执行这段代码,我正在打印我的 sql 字符串,类似这样的

"INSERT INTO xsn_core_helix_streams_stats (timestamp,type,client,publish_time,connects,id_stream,server) VALUES('2013/02/11 16:23:27',null,null,null,'1','4',6);" 

但我收到了异常

 "java.sql.SQLException: Unknown column 'server' in 'field list'"

当我描述我的表格时,我可以看到该列,当我在控制台中复制和粘贴时,我可以看到“查询正常,1 行受影响(0.03 秒)” 为什么?

【问题讨论】:

  • 试试server(“服务器”周围的反引号)
  • 另一个想法:尝试删除 SQL 字符串末尾的分号。
  • 我试过了,还是不行

标签: java mysql tomcat6


【解决方案1】:

我解决了问题,tomcat6备份了我的servlet配置文件(Servlet/META-INF/context.xml),放在/etc/tomcat6/Catalina/localhost,那么问题是这个文件不正确,问候谢谢!!

【讨论】:

    【解决方案2】:

    尽管来自@paulsm4 和@ilopezluna 的响应,SERVER 不是 MySQL 中的保留字。参照。 http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html

    因此,我会仔细检查您的表 xsn_core_helix_streams_stats 是否确实有一个名为 server 的列。

    例如,尝试打开 MySQL 客户端,准备好数据库,然后运行 ​​SHOW CREATE TABLE LIKE xsn_core_helix_streams_stats

    我可以通过创建一个表没有一个名为server 的列并在您的示例中尝试 INSERT 语句来重现您报告的错误。

    【讨论】:

    • 当我像 xsn_core_helix_streams_stats 一样运行 CREATE TABLE xsn_core_helix_streams_stats2 时;输出是 Query OK,0 行受影响(0.09 秒),以及新表的描述,它显示了包括“服务器”在内的所有字段:(
    【解决方案3】:

    我的工作台标记了“服务器”这个词,所以可能是一个保留字。尝试更改表中列的名称并查询,然后重试

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-01
      • 2019-10-02
      相关资源
      最近更新 更多