`
peonyzzdx
  • 浏览: 587419 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

ORA-01747: user.table.column, table.column 或列说明无效

阅读更多
ORA-01747: user.table.column, table.column 或列说明无效
   原因之一是sql语句拼接错误,多了逗点;二是使用到了oracle的关键字所致

下面是我在写程序时遇到的异常,是因为sql拼接错误。
控制台异常:



dangerousChemicalsUnit.xml

<update id="updateDangerousChemicalsUnit" parameterClass="dangerousChemicalsUnit">
update dangerousChemicalsUnit set
<dynamic>
<isPropertyAvailable prepend="," property="id">
         
            </isPropertyAvailable>

           <isPropertyAvailable prepend="," property="organization">
            orgId=#organization.id#
            </isPropertyAvailable>
        <isPropertyAvailable prepend="," property="orgInternalCode">
            orgInternalCode=#orgInternalCode#
            </isPropertyAvailable>
           <isPropertyAvailable prepend="," property="unitAddress">
            unitAddress=#unitAddress#
            </isPropertyAvailable>
               ……
       where  id = #id#
         </dynamic>
</update>


将控制台打印的sql语句在plsql中执行发现:sql语句在xml中拼接错误


改正dangerousChemicalsUnit.xml

<update id="updateDangerousChemicalsUnit" parameterClass="dangerousChemicalsUnit">
update dangerousChemicalsUnit set
<dynamic>      
unitName=#unitName#
<isPropertyAvailable prepend="," property="organization">
            orgId=#organization.id#
            </isPropertyAvailable>
        <isPropertyAvailable prepend="," property="orgInternalCode">
            orgInternalCode=#orgInternalCode#
            </isPropertyAvailable>
           <isPropertyAvailable prepend="," property="unitAddress">
            unitAddress=#unitAddress#
            </isPropertyAvailable>
               ……
       where  id =#id# 
         </dynamic>
</update>

// 此处只要确保拼接的sql语句正确即可。避免update  dangerousChemicalsUnit set ,orgId=#organization.id#.....

  • 大小: 23.8 KB
  • 大小: 4.4 KB
分享到:
评论

相关推荐

    instantclient-sqlplus-windows.x64-21.13.0.0.0dbru.zip

    4. 编辑tnsnames.ora文件,添加或修改数据库连接描述,定义要连接的服务名。 5. 在命令行输入`sqlplus /nolog`,然后使用`CONNECT username/password@service_name`登录到Oracle数据库。 使用SQL*Plus的一些基本...

    查找oracle数据库表中是否存在系统关键字的方法

    今天在工程中遇到“ORA-01747: user.table.column, table.column 或列说明无效”的报错情况,查了一下是由于数据库列名起的不好引起的,名字用到了数据库的关键字。 select * from v$reserved_words where keyword ...

    oracle常用命令及错误类型(error message)

    - `CREATE TABLE 表名 (column1 数据类型, column2 数据类型, ...);` 8. 查看表结构: - `DESCRIBE 表名;` 9. 数据库对象查询: - `SELECT * FROM DBA_OBJECTS WHERE OBJECT_TYPE = 'TABLE';` 10. 执行SQL脚本...

    oracle恢复工具-FY_Recover_Data

    到此已经说明了如何恢复Truncate表了. 跟据原理可以创建一个恢复包Recover_Truncate_Data,然后我们可以做个实验进行验证恢复效果如何: 第一步:创建表 create ...

    cms后台管理

    &lt;class name="MyContent" table="jc_mycontent"&gt; &lt;meta attribute="sync-DAO"&gt;false&lt;/meta&gt; &lt;cache usage="read-write"/&gt; &lt;id name="id" type="java.lang.Integer" column="id"&gt;...

    oracle创建数据库、表、以及权限的配置

    在Oracle数据库管理中,创建数据库、表以及设置权限是日常操作的重要组成部分,这对于任何数据库管理员或开发者来说都是必备技能。Oracle作为一个功能强大的关系型数据库管理系统,提供了丰富的工具和语法来支持这些...

    Oracle数据库学习日记-实用性最强的Oracle学习总结.docx

    - 使用 `SELECT` 语句查询表中的指定列或所有列。 - 示例:`SELECT ID, NAME FROM MY_TABLE;` - 示例:`SELECT * FROM MY_TABLE;` ##### 5.3 Distinct 取消重复行 - 使用 `DISTINCT` 关键字可以去除查询结果中的...

    Oracle数据库学习日记

    - **查询指定列**: 使用 `select column_name from table_name;` - 示例: `select name from employees;` ##### 5.3 Distinct 取消重复行 - **去除重复**: 使用 `distinct` 关键字。 - 示例: `select distinct ...

    韩顺平玩转Oracle 课件

    - **修改表**:通过 `ALTER TABLE` 来修改现有表的结构(如添加、删除或修改列)。 - **删除表**:利用 `DROP TABLE` 命令可以删除整个表及其所有数据。 - **查看表信息**:使用 `DESCRIBE table_name` 或者 `SELECT...

    oracle常用命令大全

    - `ORDER BY`:按指定列排序结果,如`SELECT * FROM table_name ORDER BY column_name ASC/DESC`。 3. **数据插入、更新和删除**: - `INSERT INTO`:插入新记录,如`INSERT INTO table_name (column1, column2)...

    Oracle查询用户所有表的语句

    select t.*, c.COMMENTS from user_tab_columns t, user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表 修改表结构更改表的结构: 1. 编辑...

    Oracle学习要点记录(包括DML\DDL等数据库管理语句)

    - 示例:`ALTER TABLE ic_saleout_b ADD (column1 DECIMAL(28,8), column2 DECIMAL(28,8));` - 这条语句向`ic_saleout_b`表中添加了两个新的列`column1`和`column2`。 - **`DROP`语句**: - 用于删除数据库对象...

    jdbc基础和参考

    table s_user( id , name, age) class User{ } //分别使用Statement对象和PreparedStatement对象实现 public class JDBCTest{ //查找s_user表中所有的数据,并且返回他们的集合 public Collection&lt;User&gt; find...

    ora分析脚本

    - [-u &lt;user/passwd&gt;] colstats stats for each table, column - [-u &lt;user/passwd&gt;] tabstats stats for each table - params []: view all parameters, even hidden ones - snap: view all snapshots status ...

    Oracle sqldeveloper without jdk (win+linux)

    - Bug 5084687: When a table to be edited contains a column with character length semantics, the Edit Table dialog box will show the byte length instead of the character length of this column. ...

    Oracle常用命令大全

    - **查询`USER_INDEXES`表字段的含义**: `SELECT COLUMN_NAME, COMMENTS FROM DICT_COLUMNS WHERE TABLE_NAME = 'USER_INDEXES';` - **2. 用户常用数据字典查询方法** - **查看当前用户的缺省表空间**: - `...

    数据库oracle 学习笔记重点总结

    这个错误表明无法访问或打开指定的数据文件14。 3. **ORA-01110:文件14:‘E:\test\test.dbf’:** 这个错误给出了具体的文件名和位置,表明问题可能出现在文件路径或者文件本身。 ### 四、数据库对象管理 在...

Global site tag (gtag.js) - Google Analytics