Recent content by Sonique

  1. S

    9i Client reverting to SQL*Net calls?

    It was loading the wrong DLL due to a simple version check in OracleCI.pas in function FindOCIDLL: if (tINfo.Version >= 8) and (tInfo.Major >= 1) then begin OCIDLL := Path + 'oci.dll'; ... end; When this was changed to if ((tINfo.Version >= 8) and (tInfo.Major >= 1)) or (tINfo.Version...
  2. S

    9i Client reverting to SQL*Net calls?

    Hi all, Has anyone out there had any success using DOA 3.4.3 with the 9i Client? We've found that it reverts back to using the SQL*Net calls as it can not find about 1/2 of the Net8 calls. Still investigating .....
  3. S

    AV in TOracleSession.ReturnCode

    Hi Marco etc. I've just found a minor problem with the ReturnCode function. We have some code which looks (roughly)like this: try Session.LogOn; except Trace.Log('[Error Connecting]: ' + OracleSession.ErrorMessage(OracleSession.ReturnCode)); raise; end; Now if the OCI dll...
  4. S

    More null LOB collection element woes

    Hi Marco, I actually worked around the problem myself in the application code - after calling Assign for an Object, I check to see if the object is a collection of lob's. If so, I iterate the *original* collection, replacing any null lobs in the copy with a new LOB Locator Paul
  5. S

    More null LOB collection element woes

    Hi, I've been tracking down my AV's with respect to null LOB's within collections, and have narrowed it down to a problem with The deep copy of the collection itself. If any methods of the LOBLocator for the null LOB element (such as IsNull) have been called, then AV's in the OCI dll's...
  6. S

    TLOBLocator.Assign & null LOB's

    Hi Marco & Co., Having recently upgraded to 3.4.3, I've been removing all my work-arounds for Object and LOB support, and in the process have discovered a new bug in TLOBLocator. I have a collection of LOB elements (strange but true). As I am processing each element, I create a new LOB Locator...
  7. S

    OracleAliasList stripping .WORLD

    Hi, I notice that the OracleCI.FindAliases strips '.WORLD' from any alias it finds in tnsnames.ora. This has caused us problems with 8i clients, so we have temporarily modified this code so that it is not removed. Can this either be made an option, or alternatively can TOracleSession.LogOn be...
  8. S

    Describe an Oracle 8 objects via SQL*Net

    Hi, I have encountered a problem which looks like it is OCI, but there may be a workaround. If I have a query which returns rows of type CLOB when using a SQL*Net client, when TOracleQuery.Describe is called, odescr() returns an ORA-3115 (unsupported network datatype or representation)...
  9. S

    TOracleObject and mixed case attribute names

    I've just discovered that TOracleObject chokes on mixed case attribute names. The problem is that when you call GetAttr, the interbal call to FindAttr fails, so GetAttr thinks that it needs to call FindMeth, which in turn raises an exception 'Unknown method:'. This is the culprit line/s...
  10. S

    TOracleObject.Assign and Collections

    Having resolved this apparent OCI bug (by way of manually copying all collection elements after calling TOracleObject.Assign), I've run into a stumbling block. If I have a table collection with an element type of BFile, I can not copy the element if it is not null (SetElement will not write...
  11. S

    Where is TOracleObject.LOBElements ?

    Is there any reason why LOB elements are returned as strings (CLOB) or variant arrays (BLOB/BFILE) when they are collection (table) elements rather than as TLOBLocator like object attributes? It's a shame to have to write two lots of code to do effectively the same thing, and I miss...
  12. S

    TOracleQuery.Parse fails for Oracle 7

    I agree that in most cases it makes sense to defer the parse, but in my particular case I need to know if the statement is a PL/SQL Block or not. Perhaps what is required is an parameter in TOracleQuery. Describe to force the parse. ie: Describe(True); // Force the parse Describe(); //...
  13. S

    Poor handling of connection loss

    With DOA 3.3.1, loss of connection is not handled terribly well. The problem is that the majority of OCI calls are made without first checking the validity of the handles which are passed in. To demonstrate, build an app with a TOracleSession and TOracleData component tied to a data source and a...
  14. S

    TOracleQuery.Parse fails for Oracle 7

    In TOracleQuery.Parse (3.3.1), the following code is executed when connected to Oracle 7: oparse(CDA, PChar(ParsedSQL), -1, 1, 2); // Parsed successfully, set functiontype FFunctionType := CDA.ft; Unfortunately, as the the second last parameter to oparse is requesting a...
  15. S

    TOracleObject.Assign and Collections

    A puzzling problem with Collections. I can quite happily create a new TOracleObject then copy an existing one using the Assign method. If I do the same for a collection type, it seems that the element data does not get copied. ie: Obj1 := Query1.ObjField(0); Obj2 :=...
Back
Top