OO4O & VC++ 4.0
Hi,
I would like to use OO40 in a VC++ 4.0 project.
I am using the version 8.1.6.3.13 for OO4O and Oracle 8i 8.1.6 Release 2 for Database.
I have included the needed libraries.
I have tried to compile the project, and I have got a lot of compilation errors into oracl.h file, like these:
c:\orant81\oo4o\cpp\include\Oracl.h(751) : error C2501: 'bool' : missing decl-specifiers
c:\orant81\oo4o\cpp\include\Oracl.h(751) : error C2146: syntax error : missing ';' before identifier 'GetAutoCommit'
c:\orant81\oo4o\cpp\include\Oracl.h(752) : error C2061: syntax error : identifier 'bool'
c:\orant81\oo4o\cpp\include\Oracl.h(788) : error C2146: syntax error : missing ';' before identifier 'OValue'
c:\orant81\oo4o\cpp\include\Oracl.h(790) : error C2146: syntax error : missing ';' before identifier 'OValue'
c:\orant81\oo4o\cpp\include\Oracl.h(792) : error C2146: syntax error : missing ';' before identifier 'OValue'
c:\orant81\oo4o\cpp\include\Oracl.h(795) : error C2146: syntax error : missing ';' before identifier 'OValue'
c:\orant81\oo4o\cpp\include\Oracl.h(1717) : error C2146: syntax error : missing ';' before identifier 'OServer'
c:\orant81\oo4o\cpp\include\Oracl.h(1720) : error C2146: syntax error : missing ';' before identifier 'OServer'
c:\orant81\oo4o\cpp\include\Oracl.h(1752) : error C2146: syntax error : missing ';' before identifier 'OObject'
c:\orant81\oo4o\cpp\include\Oracl.h(1754) : error C2144: syntax error : missing ';' before type 'int'
c:\orant81\oo4o\cpp\include\Oracl.h(1826) : error C2501: 'bool' : missing decl-specifiers
I have read the documentation of this version of OO4O and I know that it isn't compatible with VC++ 4.0. So, I would like to know:
Which is the compatible version of OO4O with VC++ 4.0?
Where can I find it?.
Please reply also to my e-mail.
Thank you a lot.
Bye.
Raul Serrano
Cordial Iberia S.L
E-mail: [email protected]
OO4OからODP.Netに変更した理由としましては、64bit環境ではOO4Oは使用できないとあったためです。わたしもハマりました。コレ。
サーバーにマルチホームでOracle Client 32bitをインストールすることで対処しました。
Similar Messages
-
How can I deal with long sql by the oo4o?
I am using VB and oo4o to develop a sql executor which is a extention of an old system.
For some reason, I have to use oo4o v8.1.7 to deal with Oracle Database 8i to 11g.
But when I send a very long sql(11KB) to it I got a error in the VB enviroment.
The Err.Description is "automention error. Started object is disconnected by the client.".
The Err.Number is "-2147417848 ".
The sql that I send it to the program is a simple select sql that like select a, b, c, substrb(d, 1, 2), substrb(e, 2, 3) .... from A_TBL where A=aa;
This sql is normally executed by the sqlplus but I got an error by the oo4o.
When I insert a '' between the 30Xth items, it got exectuted normally.
ex. select a, b, c, substrb(d, 1, 2), substrb(e, 1, 2) ..... substrb(303th, 3, 4), '', substrb(304th, 1, 2) ... from A_TBL where A = aa;
How can I deal with this problem? Thanks.So how can use this function correctly?By learning what exceptions are, how they're used, and what you can do to deal with them. There's a tutorial here: http://java.sun.com/docs/books/tutorial/essential/exceptions/index.htmlAnd here's a quick overview:
The base class for all exceptions is Throwable. Java provides Exception and Error that extend Throwable. RuntimeException (and many others) extend Exception.
RuntimeException and its descendants, and Error and its descendants, are called unchecked exceptions. Everything else is a checked exception.
If your method, or any method it calls, can throw a checked exception, then your method must either catch that exception, or declare that your method throws that exception. This way, when I call your method, I know at compile time what can possibly go wrong and I can decide whether to handle it or just bubble it up to my caller. Catching a given exception also catches all that exception's descendants. Declaring that you throw a given exception means that you might throw that exception or any of its descendants.
Unchecked exceptions (RuntimeException, Error, and their descendants) are not subject to those restrictions. Any method can throw any unchecked exception at any time without declaring it. This is because unchecked exceptions are either the sign of a coding error (RuntimeException), which is totally preventable and should be fixed rather than handled by the code that encounters it, or a problem in the VM, which in general can not be predicted or handled. -
Oracle 8i Lite - OO4O and other Questions
1.) Can OO4O (Oracle Objects for OLE) be used with the Oracle 8i Lite database ?
2.) Does Oracle 8i Lite operate as a "client/server" database ?
3.) Is it possible to have multi-user access to Oracle 8i Lite ?
4.) Is there documentation somewhere that lists all of the limitations with 8i Lite as compared to 8i ?
We are in the planning stages of a partial mobile system, and want to know how much difference in development efforts for the 2 platforms (Oracle 8i on Win 2000 server and Oracle 8i Lite on NT/98/95 Laptops).
Any information on Oracle 8i Lite would be appreciated. -- Especially need an answer to question 1 right now.
Thanks,
PaulaHi,
I am qouting below from the oracle 8i Lite documentation which says it supports triggers . Please clarify.
Oracle Lite DBMS
Oracle Lite DBMS is a lightweight (50KB - 750KB), Java enabled database designed from the ground up for laptops, handheld computers, PDAs and smartphones. It supports industry standard ODBC, JDBC, SQLJ, and Java Stored Procedures and Triggers. It provides a streaming fast "C" interface, OKAPI, to its object kernel. It also supports Java Access Classes, JAC, a fast and easy way to make Java Objects persistent. Oracle Lite DBMS now supports all popular mobile platforms, including Palm OS, EPOC, and Windows CE, letting you deploy enterprise applications on virtually any mobile device.
Regards
null -
What's wrong with OO4O and delphi
I am trying usint OO4O to fetch the spatial data in delphi,but I can not use the opendatabase function.
here is the code
var
OO4OSession:variant;
OraDatabase:variant;
begin
OO4OSession:= CreateOLEObject('oracleInProcServer.XOraSession');
OraDatabase:=OO4OSession.OpenDatabase('ExampleDb','scott/tiger', 0);
end;
the code is from the help.the error says that the opendatabase member function is not find.
and when I trying to import type library of Oracle InProc Server 4.0 Type Library,when compile the unit,the error messages are like below
[Error] OracleInProcServer_TLB.pas(2548): Undeclared identifier: 'CreateDatabase'
[Error] OracleInProcServer_TLB.pas(2553): Undeclared identifier: 'OpenDatabase'
[Error] OracleInProcServer_TLB.pas(2573): Undeclared identifier: 'Open'
[Error] OracleInProcServer_TLB.pas(2578): Undeclared identifier: 'Close'
[Error] OracleInProcServer_TLB.pas(2706): Undeclared identifier: 'Name'
[Error] OracleInProcServer_TLB.pas(2712): Undeclared identifier: 'OpenDatabase'
[Error] OracleInProcServer_TLB.pas(2717): Undeclared identifier: 'Client'
[Fatal Error] dclusr50.dpk(41): Could not compile used unit '..\Imports\OracleInProcServer_TLB.pas'
Realy strange,can some one help me on this ,Thank u very much.I would recommend you don't use oo4o from Delphi.
Check out ODAC at www.crlab.com. This is a VCL library based on the OCI directly so you will not have the backwards compatibility woes that come with oo4o.
A library is also available from the same company that doesn't need the Oracle Client installed.
Hope this helps.
Adrian -
The question about RAW datatype in VBA with OO4O
Hi all.
I have developed a sort of VBA program with oo4o.
When I issued "select rawtohex(saddr),saddr from v$session where rownum < 2" and I displayed the result on excel spread sheet.
The result was below.
RAWTOHEX(SADDR) SADDR
C0000000E14ADDF0 �
I found I couldn't display a raw datatype result without using RAWTOHEX function.
But, I query the table using "*",such as " select * from v$session" sometime. So I have to display the raw datatype result without using oracle function.
I heard that the "RAW" datatype is a array of byte, so I used byte array.
The following is my first idea and the result is wrong.
The result is 'FF000000......', not 'C000000....'
Is there any good idea?
Dim oSession As Object
Dim oDatabase As Object
Dim oRs As Object
Dim cntCol, cntRow As Long
Dim rowNum, colNum As Long
Dim sraw() As Byte
Dim k As Integer
Dim hexaString As String
Set oSession = CreateObject("OracleInProcServer.XOraSession")
Set oDatabase = oSession.DbOpenDatabase(gTargetServer, gUserID & "/" & gPasswd, 0&)
Set oRs = oDatabase.DbCreateDynaset(gSqlString, 0&)
cntCol = oRs.Fields.Count
cntRow = oRs.RecordCount
ReDim resData(cntRow, cntCol) ' the variant type array to store result
'To store column title.
For colNum = 0 To cntCol - 1
resData(0, colNum) = oRs.Fields(colNum).Name
Next colNum
'To store data.
For rowNum = 1 To cntRow
For colNum = 0 To cntCol - 1
Select Case oRs.Fields(colNum).Type
Case 11
sraw = oRs.Fields(colNum).Value
For k = 0 To UBound(sraw)
hexaString = hexaString & Hex(sraw(k)) '<= here.***********
Next k
resData(rowNum, colNum) = hexaString
Case Else
resData(rowNum, colNum) = oRs.Fields(colNum).Value
End Select
Next colNum
oRs.MoveNext
Next rowNum
I hope I get helps.
Bill.But, I query the table using "*",such as " select * from v$session" sometimeCan't you use
select rawtohex(saddr) hexaddr, t.* from v$session t
(if you really need '*' ) ?
Rgds. -
Oo4o release 10.1.0.5.1
Hello every body,
I have problem with oo4o release 10.1.0.5.0 april 2004 with windows 2003 server ... under heavy load it always causes the crash of IIS worker process w3wp.exe ...
I read on metalink about new release of OO4O 10.1.0.5.1 Nov 2004 ... but unfortunately I could not find a way to download it from metalink nor from OTN ....
the one avaiable on OTN is dated 5/5/05 however after I download it ... it was the same old release of april 2004 with oo4o 10.1.0.5.0
PLEASE i NEED URGENT HELP BEFORE MARKET OPENS
THANKSIt is bound to be under the patches link on MetaLink. If you call support they can get you the actual patch/bug number so you can more easily find it.
-
OO4O Version 2.3 for Oracle 8.0
All,
Anyone has OO4O version 2.3 installation executable ? The oracle download no longer post this version.
Thanks
Trong Pham
[email protected]Hi
Where can I download the updated oracle intelligent agent?
CanI use the oracle 9i cd that I have?
Could I installed in the existing oracle 8.0.5 home?
thanks -
Accessing V$tables from within OO4O
When trying to access the V$ tables (ie. V$SQLTEXT)
by using the OO4O interface I get the error
ORA-03106 Fatal two task communication protocol error
when accessing 'ordinary' tables (ie. EMPLOYEES) the
error does not accor
any ideas on this one?
nullHi Anil,
I can only answer 1. and 2. (and would be interested into 3. as well):
1.
Yes you can access tables from a different schema and also HANA views. In this case no 'using' is needed.
Examples:
RESULT = SELECT
FROM
"SAP_ECC"."T441V" AS t,
"_SYS_BIC"."tmp.package/AFPO" AS a.
WHERE ...
2. In this case, if you need schema mapping: You could use HANA (projection) views which just forward to a different schema, also see example.
Best regards,
Christoph -
What type of exception to catch in OO4O
I am new to OO4O.
OStartup();
session.Open();
session.CreateDatabasePool(2, 3, 2000, "mastersf.world", "crawler", "jetcrawler", ODATABASE_DEFAULT);
try {
ODatabase odb = session.GetDatabaseFromPool(5000);sorry for the incomplete post ...
Here is my code:
OStartup();
session.Open();
session.CreateDatabasePool(2, 3, 2000, "mastersf.world", "crawler", "jetcrawler", ODATABASE_DEFAULT);
try {
ODatabase odb = session.GetDatabaseFromPool(5000);
catch (WHAT_EXCEPTION_I_SHOULD_USE e) {
When I try to catch the exception, what type I should use? I tried OException, it doesn't work.
thanks. -
Oo4o (Oracle 8i) and COM+
Hi,
We have an application which access Oracle 8i database using oo4o objects hosted in Windows 2000 COM+.
Communicated with MS support and they told that MS is recommending 8.1.7.1.3 Oracle or above. Currently we have 8.1.7.0.0. The 0.0 version leaks memory a lot.
Do any one knows about this?
In addition we are using OraXML DOM/SAX parser. Does this leak memory as well?
Randomly I am seeing that the number of in-call objects is rising up, but we do not get that much of simultaneous user activities. Looks like all the objects are trying to access something from the database and waiting indefinitely. By restarting COM+ we can teporarly solve this issue.
Please help. Send me anything that will help us to solve this problem.
Thanks,
Hilmi.
([email protected])Evgeni, There is no problem. It is just that you will load a single system. Generally, in an n-tier appliation each layer resides on separate machines. But, that is not a hrad-and-fast rule.
-
Hello together,
I post this Question here in
Re: SQL-Statement with OO4O
and i should paste my question again in an another database forum.
now here again:
I have here following Problem:
Everthime I make a connection to my database with this code
Set oSess = Server.CreateObject("OracleInProcServer.XOraSession")
Set oDB = oSess.DbOpenDatabase(tnsname, user/PWD, 4)
I get always this Statement in the DB-queue
SELECT parameter, VALUE
FROM SYS.nls_database_parameters
WHERE parameter IN ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET')
Can me anyone tell me why I get this statement and how I can disable it?
Best Regards
AndyHi,
What can you do/change?I must ask next week my boss when he is back,
what kind of changes I can do.
Can you add a PL/SQL call to DBMS_APPLICATION_INFO into application?my boss must give me the permission to do a call to DBMS_APPLICATION_INFO.
A way to identify the source of the badly behaving code is required; whether that be within the DB or external of it.I think so too.
So please wait, until I have talk with my boss, than I will give you the answer you want. Sorry.
Any other ideas, what I can do without call/changes on the database to find the problem?
Best Regards
Andy -
Oracle 11.2.0.1 & oo4o(32bit)で表関数を使用するとエラーとなる
お世話になっております。
通常サーバー:
asianux 3 (32bit) ,
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0,
ビッグデータ用サーバー:
asianux 4 (64bit) ,
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit
クライアント:
Windows 7 (64bit)
Excel 2010(32bit)
Oracle Client 11.2.3(32bit)
上記の環境で、いつもはクライアント側から、Excel & OO4O接続で、データを取得しています。
SELECT ... FROM AA... といった通常のSQL文であれば、クライアント側から、通常サーバー、ビッグデータサーバーどちらに繋いでも
データの取得は出来るのですが、
SELECT * FROM TABLE( AA( XXXXX)) といった表関数を使用している物のみ、
CreateDynaset()関数でエラーになってしまいます。
実行時エラー: 80010108
CreateDynasetメソッドは失敗しました。_IOraDatabaseオブジェクト
Oracle x64+OO4Oでは、表関数は使用できないのでしょうか?
ご存知の方は教えてください。よろしくお願いします。
※因みに、通常サーバーの方に select * from table(AA(xxx))
するのはちゃんと取得できます。本件、自己解決しました。
念のため、投稿しておきます。
OO4O 11.2.0.3 + ORACLE 64bitへの接続でもデータはうまく取得できました。
唯、SQLの書き方で、
SELECT * FROM
TABLE ( AAA(XXXX)) A
INNER JOIN YYYY B ON A.CODE=B.CODE
の書き方はNGで、
SELECT * FROM
TABLE(AAA(XXXX)) A ,
YYYY B
WHERE A.CODE=B.CODE
は、何故かうまく取得できるようです。 -
ORACLE OBJECTS FOR OLE(OO4O) PERFORMANCE TUNING
제품 : ORACLE SERVER
작성날짜 : 1997-10-10
ODBC의 경우는 Block단위로 data를 Query하는데 비해 OLE의 경우는 한번에 전체
의 자료를 가져다가 Temporary storage space에 넣게 됩니다.
그래서 튜닝을 위해서는
Windows 3.1의 경우는 c:/windows/oraole.ini
WIN95의 경우는 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\OO4O
parameters를 수정해야 합니다.
만일 위의 File이 없는 경우는 모든 변수가 Default로 설정된 경우이므로 인스톨
된 Help를 자세히 읽어보고 적용을 해야합니다.
FetchLimit이 가장 큰 영향을 끼치는 파라미터로, 일반적으로 이 값이 클수록
속도가 빨라지게 됩니다. 다음은 관련 자료입니다.
Tuning and Customization
A number of working parameters of Oracle Objects for OLE can be
customized. Access to these parameters is provided through the Oracle
initialization file, by default named ORAOLE.INI.
Each entry currently available in that file is described below. The location
of the ORAOLE.INI file is specified by the ORAOLE environment variable.
Note that this variable should specify a full pathname to the Oracle
initialization file, which is not necessarily named ORAOLE.INI. If this
environment variable is not set, or does not specify a valid file entry, then
Oracle Objects for OLE looks for a file named ORAOLE.INI in the Windows
directory. If this file does not exist, all of the default values
listed will apply.
You can customize the following sections of the ORAOLE.INI file:
[Cache Parameters]
A cache consisting of temporary data files is created to manage amounts
of data too large to be maintained exclusively in memory. This cache
is needed primarily for dynaset objects, where, for example, a single
LONG RAW column can contain more data than exists in physical
(and virtual) emory.
The default values have been chosen for simple test cases, running on a machine
with limited Windows resources. Tuning with respect to your machine and
applications is recommended.
Note that the values specified below are for a single cache, and that a separate
cache is allocated for each object that requires one. For example, if
your application contains three dynaset objects, three independent data
caches are constructed, each using resources as described below.
SliceSize = 256 (default)
This entry specifies the minimum number of bytes used to store a piece
of data in the cache. Items smaller than this value are allocated the
full SliceSize bytes for storage; items larger than this value are
allocated an integral multiple of this space value. An example of an
item to be stored is a field value of a dynaset.
PerBlock = 16 (default)
This entry specifies the number of Slices (described in the preceding
entry) that are stored in a single block. A block is the minimum unit
of memory or disk allocation used within the cache. Blocks are read
from and written to the disk cache temporary file in their entirety. Assuming a SliceSize of 256 and a PerBlock value of 16, then the block
size is 256 * 16 = 4096 bytes.
CacheBlocks = 20 (default)
This entry specifies the maximum number of blocks held in memory at any
one time. As data is added to the cache, the number of used blocks
grows until the value of CacheBlocks is reached. Previous blocks are
swapped from memory to the cache temporary disk file to make room for
more blocks. The blocks are swapped based upon recent usage. The total
amount of memory used by the cache is calculated as the product of
(SliceSize * PerBlock * CacheBlocks).
Recommended Values: You may need to experiment to find optimal cache parameter
values for your applications and machine environment. Here are some guidelines
to keep in mind when selecting different values:
The larger the (SliceSize * PerBlock) value, the more disk I/O is
required for swapping individual blocks. The smaller the (SliceSize * PerBlock) value, the
more likely it is that blocks will need to be swapped to or from disk.
The larger the CacheBlocks value, the more memory is required, but the
less likely it is that Swapping will be required.
A reasonable experiment for determining optimal performance might
proceed as follows:
Keep the SliceSize >= 128 and vary PerBlock to give a range of block
sizes from 1K through 8K.
Vary the CacheBlocks value based upon available memory. Set it high
enough to avoid disk I/O, but not so high that Windows begins swapping
memory to disk.
Gradually decrease the CacheBlocks value until performance degrades or
you are satisfied with the memory usage. If performance drops off,
increase the CacheBlocks value once again as needed to restore
performance.
[Fetch Parameters]
FetchLimit = 20 (default)
This entry specifies the number of elements of the array into which data
is fetched from Oracle. If you change this value, all fetched values
are immediately placed into the cache, and all data is retrieved from
the cache. Therefore, you should create cache parameters such that all
of the data in the fetch arrays can fit into cache memory. Otherwise,
inefficiencies may result.
Increasing the FetchLimit value reduces the number of fetches (calls
to the database) calls and possibly the amount of network traffic.
However, with each fetch, more rows must be processed before user
operations can be performed. Increasing the FetchLimit increases
memory requirements as well.
FetchSize = 4096 (default)
This entry specifies the size, in bytes, of the buffer (string) used for
retrieved data. This buffer is used whenever a long or long raw column
is initially retrieved.
[General]
TempFileDirectory = [Path]
This entry provides one method for specifying disk drive and directory
location for the temporary cache files. The files are created in the
first legal directory path given by:
1.The drive and directory specified by the TMP environment variable
(this method takes precedence over all others);
2.The drive and directory specified by this entry (TempFileDirectory)
in the [general] section of the ORAOLE.INI file;
3.The drive and directory specified by the TEMP environment variable; or
4.The current working drive and directory.
HelpFile = [Path and File Name]
This entry specifies the full path (drive/path/filename) of the Oracle Objects
for OLE help file as needed by the Oracle Data Control. If this entry cannot
be located, the file ORACLEO.HLP is assumed to be in the directory where
ORADC.VBX is located
(normally \WINDOWS\SYSTEM).제품 : ORACLE SERVER
작성날짜 : 1997-10-10
ODBC의 경우는 Block단위로 data를 Query하는데 비해 OLE의 경우는 한번에 전체
의 자료를 가져다가 Temporary storage space에 넣게 됩니다.
그래서 튜닝을 위해서는
Windows 3.1의 경우는 c:/windows/oraole.ini
WIN95의 경우는 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\OO4O
parameters를 수정해야 합니다.
만일 위의 File이 없는 경우는 모든 변수가 Default로 설정된 경우이므로 인스톨
된 Help를 자세히 읽어보고 적용을 해야합니다.
FetchLimit이 가장 큰 영향을 끼치는 파라미터로, 일반적으로 이 값이 클수록
속도가 빨라지게 됩니다. 다음은 관련 자료입니다.
Tuning and Customization
A number of working parameters of Oracle Objects for OLE can be
customized. Access to these parameters is provided through the Oracle
initialization file, by default named ORAOLE.INI.
Each entry currently available in that file is described below. The location
of the ORAOLE.INI file is specified by the ORAOLE environment variable.
Note that this variable should specify a full pathname to the Oracle
initialization file, which is not necessarily named ORAOLE.INI. If this
environment variable is not set, or does not specify a valid file entry, then
Oracle Objects for OLE looks for a file named ORAOLE.INI in the Windows
directory. If this file does not exist, all of the default values
listed will apply.
You can customize the following sections of the ORAOLE.INI file:
[Cache Parameters]
A cache consisting of temporary data files is created to manage amounts
of data too large to be maintained exclusively in memory. This cache
is needed primarily for dynaset objects, where, for example, a single
LONG RAW column can contain more data than exists in physical
(and virtual) emory.
The default values have been chosen for simple test cases, running on a machine
with limited Windows resources. Tuning with respect to your machine and
applications is recommended.
Note that the values specified below are for a single cache, and that a separate
cache is allocated for each object that requires one. For example, if
your application contains three dynaset objects, three independent data
caches are constructed, each using resources as described below.
SliceSize = 256 (default)
This entry specifies the minimum number of bytes used to store a piece
of data in the cache. Items smaller than this value are allocated the
full SliceSize bytes for storage; items larger than this value are
allocated an integral multiple of this space value. An example of an
item to be stored is a field value of a dynaset.
PerBlock = 16 (default)
This entry specifies the number of Slices (described in the preceding
entry) that are stored in a single block. A block is the minimum unit
of memory or disk allocation used within the cache. Blocks are read
from and written to the disk cache temporary file in their entirety. Assuming a SliceSize of 256 and a PerBlock value of 16, then the block
size is 256 * 16 = 4096 bytes.
CacheBlocks = 20 (default)
This entry specifies the maximum number of blocks held in memory at any
one time. As data is added to the cache, the number of used blocks
grows until the value of CacheBlocks is reached. Previous blocks are
swapped from memory to the cache temporary disk file to make room for
more blocks. The blocks are swapped based upon recent usage. The total
amount of memory used by the cache is calculated as the product of
(SliceSize * PerBlock * CacheBlocks).
Recommended Values: You may need to experiment to find optimal cache parameter
values for your applications and machine environment. Here are some guidelines
to keep in mind when selecting different values:
The larger the (SliceSize * PerBlock) value, the more disk I/O is
required for swapping individual blocks. The smaller the (SliceSize * PerBlock) value, the
more likely it is that blocks will need to be swapped to or from disk.
The larger the CacheBlocks value, the more memory is required, but the
less likely it is that Swapping will be required.
A reasonable experiment for determining optimal performance might
proceed as follows:
Keep the SliceSize >= 128 and vary PerBlock to give a range of block
sizes from 1K through 8K.
Vary the CacheBlocks value based upon available memory. Set it high
enough to avoid disk I/O, but not so high that Windows begins swapping
memory to disk.
Gradually decrease the CacheBlocks value until performance degrades or
you are satisfied with the memory usage. If performance drops off,
increase the CacheBlocks value once again as needed to restore
performance.
[Fetch Parameters]
FetchLimit = 20 (default)
This entry specifies the number of elements of the array into which data
is fetched from Oracle. If you change this value, all fetched values
are immediately placed into the cache, and all data is retrieved from
the cache. Therefore, you should create cache parameters such that all
of the data in the fetch arrays can fit into cache memory. Otherwise,
inefficiencies may result.
Increasing the FetchLimit value reduces the number of fetches (calls
to the database) calls and possibly the amount of network traffic.
However, with each fetch, more rows must be processed before user
operations can be performed. Increasing the FetchLimit increases
memory requirements as well.
FetchSize = 4096 (default)
This entry specifies the size, in bytes, of the buffer (string) used for
retrieved data. This buffer is used whenever a long or long raw column
is initially retrieved.
[General]
TempFileDirectory = [Path]
This entry provides one method for specifying disk drive and directory
location for the temporary cache files. The files are created in the
first legal directory path given by:
1.The drive and directory specified by the TMP environment variable
(this method takes precedence over all others);
2.The drive and directory specified by this entry (TempFileDirectory)
in the [general] section of the ORAOLE.INI file;
3.The drive and directory specified by the TEMP environment variable; or
4.The current working drive and directory.
HelpFile = [Path and File Name]
This entry specifies the full path (drive/path/filename) of the Oracle Objects
for OLE help file as needed by the Oracle Data Control. If this entry cannot
be located, the file ORACLEO.HLP is assumed to be in the directory where
ORADC.VBX is located
(normally \WINDOWS\SYSTEM). -
Which driver provides "OraSessionClass.OpenDatabase" method ODBC or OO4O
I've a windows app built in VB6.0 which is working fine in 32-bit machine and Oracle10g client. When my client tries to use it in a 64-bit machine and connects to Oracle11g 64-bit client the app doesn't work. I'm using "OraSessionClass" to connect to the db. I'm confused about which driver is my app using to connect to db OO4O 0r ODBC. If it is OO4O I read that there is some compatibility issue with oracle 11g 64-bit client. Is OO4O available with 64-bit client? If not, can I install 32-bit oracle11g client on a 64-bit machine get OO4O driver so that my app will work. Please suggest me in resolving this issue. Thanks a lot!!!"
Hi,
The code is using OO4O.
There is no 64 bit version of OO4O.
VB6 apps are 32 bit so need 32 bit Oracle client software.
Using 32 bit OO4O on a 64 bit OS is not a supported supported configuration, but should work anyway.
Hope it helps,
Greg -
Assign and OO4O resultset to an ADODB.recordset
How do i assign an OO4O resultset obtained within and oraDynaSet object to an ADODB.recordset (without having to parse the dynaset and .addnew the adodb rs).
help.They are not compatible objects as you already found out. Bookmarks are not interchangeable either.
-
TNS Error : ORA-12154 unsing oo4o with VB
In VB6, using oo4o(Oracle InProc Server),
whin I run debuging mode with VB6 App, result is successfull.
But, compile this application, and execute EXE module,
error occur 'Cannot resolve TNS Name (ORA-12154)'.Just make sure that the executable is not started from a directory path containing brackets (e.g. "C:\Program Files (x86)\MyApp\myapp.exe") but copy that executable to a directory path without brackets. The brackets in one of the directies in the path may lead to the Oracle exception "ORA-12154: TNS :could not resolve service name".
Maybe you are looking for
-
Download speed after mountain lion
Ever since upgrading to Mountain Lion, my internet download speed has decreased ~80%. The speed to my router is over 10MB (and that's what I was at prior to Mountain Lion), but now it's less than 3MB on my MacBook Pro, which I connect to wirelessly.
-
Is there a way to rename multiple desktops that have been created?
Is there a way to rename multiple desktops that have been created?
-
? Some pdf files from the web will not open, some will.
Some pdf files from the web will not open, some will. I am using Adobe Reader 10.0.1 on an 8-year old puter I have just upgraded to 2G of RAM. It worked fine before with 256K. When a file won't open I get error message "There is a problem with Adobe
-
I do not know what else to relate to you other than what i posted.
-
Please help me I cannot remember my answer to security questions and I don't see the option for a rescue email