Java瑣事

          -I am not alone
          posts - 54, comments - 30, trackbacks - 0, articles - 1
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

              困擾兩天的問題終于調試出來了,查了好多遍數據庫偶然發現其中一個表名(order)與關鍵字 order(order by : 聚合函數)重復,

          而造成在保存的時候插入不成功,這里完全排除映射文件的書寫錯誤外,就要到數據庫中找找端倪;

          下面把其造成的部分錯誤代碼貼在下面:

          Servlet.service() for servlet default threw exception
          com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order (userid, orderdate) values (4, '2010-06-10 15:16:17')' at line 1
           at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
           at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985)
           at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631)
           at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
           at com.mysql.jdbc.Connection.execSQL(Connection.java:3283)
           at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1332)
           at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1604)
           at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1519)
           at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1504)
          ………………

              這里還有一個原因,本人是在通過視圖界面建的表,創建期間 數據庫 并不會提示錯誤,但如果是寫入創建命令,就會有錯誤提示,

          所以提醒大家用代碼創建數據庫 更不容易 出錯,尤其對于數據庫關鍵字不太熟悉的人

          如果一定要用可視化界面,那就先請把關鍵字好好的數一遍


          評論

          # re: 小心數據庫字段與關鍵字重復問題  回復  更多評論   

          2010-09-01 19:33 by Rene
          如果與關鍵字重復,把表名或者字段名用`號引起就可以了,比如
          insert into `order` values (bla bla bla...);

          # re: 小心數據庫字段與關鍵字重復問題  回復  更多評論   

          2010-09-01 22:28 by syg
          @Rene不行,在創建的時候就會報告有錯。
          create table 'order'
          (
          ……
          )
          是會提示有錯的。但從視圖界面就不會
          這是Mysql,不知道sql server的試圖界面會不會提示

          # re: 小心數據庫字段與關鍵字重復問題  回復  更多評論   

          2010-09-01 22:34 by Rene
          測試過了,是可以的。注意,不是單引號。是1左邊的波浪號鍵打出來的引號。

          # re: 小心數據庫字段與關鍵字重復問題  回復  更多評論   

          2010-09-03 17:04 by syg
          @Rene
          謝謝,我試了試。果然可以
          但有些工具打不出來,不知道為什么。我在命令行里面測試的,通過

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 武陟县| 手游| 含山县| 军事| 留坝县| 阳西县| 丰台区| 伊川县| 黔西县| 涡阳县| 陕西省| 尼木县| 平塘县| 丰顺县| 榆中县| 肃南| 锡林郭勒盟| 驻马店市| 南丹县| 铜鼓县| 滨海县| 滦平县| 三都| 波密县| 新丰县| 密山市| 青河县| 梅州市| 桦川县| 城口县| 房山区| 荆门市| 特克斯县| 长宁县| 会昌县| 咸丰县| 北碚区| 搜索| 科技| 乐亭县| 沙田区|