2013-02-11 64 views
0

我正在使用Tomcat6和MySQL在RedHat中工作,並且我將幫助您解決一個問題,我有一個連接到我的數據庫的servlet,我發送一個SQL「字符串」我的servlet和servlet的執行這段代碼,我打印我的SQL字符串,像這樣Tomcat6在'字段列表'中的MySQL未知列「

"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'" 

,當我描述我表,我可以看到列,當我複製並粘貼在控制檯,我可以看到「查詢OK,1行受影響(0.03秒)」 爲什麼?

+1

嘗試使用''server''(back-quotes around「server」) – paulsm4 2013-02-11 23:42:31

+0

另一個想法是:嘗試刪除SQL字符串末尾的分號。 – 2013-02-11 23:44:46

+0

我試過,但它不起作用 – CharlyPL 2013-02-12 00:49:17

回答

0

我的工作臺標記「服務器」一詞,所以也許是保留字。嘗試更改表格中列的名稱並重試,然後再試

1

儘管來自@ 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語句來重現您報告的錯誤。

+0

當我運行CREATE TABLE xsn_core_helix_streams_stats2像xsn_core_helix_streams_stats;輸出爲查詢OK,0行受影響(0.09秒),並向新表中添加了一個desc,它顯示了所有字段,包括「server」:( – CharlyPL 2013-02-12 00:44:21

0

我解決了這個問題,tomcat6支持我的servlet配置文件(Servlet/META-INF/context.xml)並把它放在/etc/tomcat6/catalina/localhost中,那麼問題是這個文件是不正確的,問候和感謝!

相關問題