错误代码:904消息:Oracle JDBC驱动程序ORA-00904::无效标识符SQLState:42S22

错误代码:904消息:Oracle JDBC驱动程序ORA-00904::无效标识符SQLState:42S22,oracle,coldfusion,Oracle,Coldfusion,错误代码:904消息:Oracle JDBC驱动程序ORA-00904::无效标识符SQLState:42S22 这个函数有什么问题?我用insert调用它,得到904错误 <!---- create ----> <cffunction name="create" returntype="void"> <cfargument name="dsn" type="any" required="true" /> <cfargument

错误代码:904消息:Oracle JDBC驱动程序ORA-00904::无效标识符SQLState:42S22

这个函数有什么问题?我用insert调用它,得到904错误

<!---- create ---->
<cffunction name="create" returntype="void">
      <cfargument name="dsn" type="any" required="true" />
      <cfargument name="FNAME" type="string" required="true" />
      <cfargument name="LNAME" type="string" required="true" />
      <cfargument name="EMAIL" type="string" required="true" />
      <cfargument name="PHONE" type="string" required="true" />
      <cfargument name="TITLE" type="string" required="true" />
      <cfargument name="EXPERTISE" type="string" required="true" />
      <cfargument name="TASCS" type="string" required="true" />
      <cfargument name="LEADERSHIP" type="string" required="true" />
      <cfargument name="MANAGEMENT_TEAM" type="string" required="true" />
      <cfargument name="PARTNERS" type="string" required="true" />
      <cfargument name="CONSULTANTS" type="string" required="true" />
      <cfargument name="MEDIA_EVENTS" type="string" required="true" />
      <cfargument name="WEBSITE" type="string" required="true" />
      <cfargument name="ORGANIZATION" type="string" required="true" />
      <cfargument name="PHOTO_NAME" type="string" required="true" />
      <cfargument name="CV_FILE" type="string" required="true" />
      <cfargument name="BIO" type="string" required="true" />

    <cfset var qry="" />    
    <!----TODO:  Below code is for table without auto increment enabled for primary key .Change the query Appropriately---->
    <!---- insert record ---->
    <cftry>
    <cfquery name="qry" datasource="#dsn.getName()#">
        INSERT INTO DIRECTORY
        (
            DIRECTORY_ID,
            FNAME,
            LNAME,
            EMAIL,
            PHONE,
            TITLE,
            EXPERTISE,
            TASCS,
            LEADERSHIP,
            MANAGEMENT_TEAM,
            PARTNERS,
            CONSULTANTS,
            MEDIA_EVENTS,
            WEBSITE,
            ORGANIZATION,
            BIO,
            CREATEDBY,
            ISACTIVE
        )
        VALUES
        (
            DIRECTORY_SEQ.nextval,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.FNAME#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.LNAME#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.EMAIL#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.PHONE#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.TITLE#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.EXPERTISE#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.TASCS#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.LEADERSHIP#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.MANAGEMENT_TEAM#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.PARTNERS#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.CONSULTANTS#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.MEDIA_EVENTS#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.WEBSITE#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_VARCHAR"        value="#ARGUMENTS.ORGANIZATION#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_LONGVARCHAR"    value="#ARGUMENTS.BIO#" null="false" />,
            <cfqueryparam cfsqltype="CF_SQL_TIMESTAMP"      value="#now()#" null="false" />,
            1
        )
    </cfquery>

        <cfcatch type="Any" >
            <cfdump var="#CFCATCH#" output="C:\data\directorydao_create.txt">
        </cfcatch>
    </cftry>

</cffunction>

看起来“BIO”要么是表中不存在的列,要么是无效的列名(我不相信这是真的,因为它不是一个,并且与所有其他条件匹配,才是有效的列名)。确保数据库表中存在“BIO”列。

看起来Oracle在说BIO列不存在。如果使用select
BIO from DIRECTORY运行CFQuery
是否正确运行?
struct

Cause:  
    [struct]
    ErrorCode: 904
    Message: [Macromedia][Oracle JDBC Driver][Oracle]ORA-00904: "BIO": invalid identifier
    SQLState: 42S22
    StackTrace: java.sql.SQLSyntaxErrorException: [Macromedia][Oracle JDBC Driver][Oracle]ORA-00904: "BIO": invalid identifier
        at macromedia.jdbc.oraclebase.ddca.b(Unknown Source)
        at macromedia.jdbc.oraclebase.ddca.a(Unknown Source)
        at macromedia.jdbc.oraclebase.ddb9.b(Unknown Source)
        at macromedia.jdbc.oraclebase.ddb9.a(Unknown Source)
        at macromedia.jdbc.oracle.ddm.q(Unknown Source)
        at macromedia.jdbc.oraclebase.ddem.v(Unknown Source)
        at macromedia.jdbc.oraclebase.ddem.r(Unknown Source)
        at macromedia.jdbc.oraclebase.dddg.execute(Unknown Source)
        at macromedia.jdbc.oraclebase.dddk.execute(Unknown Source)
        at coldfusion.server.j2ee.sql.JRunPreparedStatement.execute(JRunPreparedStatement.java:101)
        at coldfusion.sql.Executive.executeQuery(Executive.java:1458)