EPrints Technical Mailing List Archive
Message: #00952
< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First
[EP-tech] Oracle issue with order tables
- To: <eprints-tech@ecs.soton.ac.uk>
- Subject: [EP-tech] Oracle issue with order tables
- From: Robert Berry <robert.berry@liverpool.ac.uk>
- Date: Fri, 17 Aug 2012 15:34:17 +0100
Hi, I've found another issue with the Oracle DB layer in the latest release. Whenever ordering using the tables suffixed '__ORDERVALUES_EN' an error such as the following occurs: DBD::Oracle::db prepare failed: ORA-00932: inconsistent datatypes: expected - got CLOB (DBD ERROR: error possibly near <*> indicator at char 316 in 'SELECT "SUBJECT"."SUBJECTID" FROM "SUBJECT" LEFT JOIN "SUBJECT__ORDERVALUES_EN" ON "SUBJECT"."SUBJECTID"="SUBJECT__ORDERVALUES_EN"."SUBJECTID", "SUBJECT_PARENTS" "SUBJECT_PARENTS" WHERE "SUBJECT"."SUBJECTID"="SUBJECT_PARENTS"."SUBJECTID" AND "SUBJECT_PARENTS"."PARENTS" = 'divisions' GROUP BY "SUBJECT"."SUBJECTID", <*>"SUBJECT__ORDERVALUES_EN"."NAME_NAME" ORDER BY "SUBJECT__ORDERVALUES_EN"."NAME_NAME" ASC') This is because in Oracle you are not able to order by CLOB (or other similar 'blob'-type fields). The field needs to be either typecast to a VARCHAR2 or the field should be initially defined as a VARCHAR2. I'm unsure which is the correct solution, as I don't know the details of how these tables work. In older versions of EPrints they were defined as VARCHAR2(1000)s, which would not cause these errors. Best wishes, Rob
- Prev by Date: [EP-tech] Re: table vs div
- Next by Date: [EP-tech] Re: table vs div
- Previous by thread: [EP-tech] Include Publication List on Other Sites
- Next by thread: [EP-tech] upgrade to 3.3.10 broke set_language
- Index(es):