Hello:
To test reproduce this issue please use this project: https://dl.dropboxusercontent.com/u/353 ... lity01.zip. I used XE5 and the latest version of the devart dbexpress driver for oracle (6.3.6).
These are the steps:
1. Open the project in XE5. Modify the connection properties to point to your own oracle database. The queries don't need any table and they create rows on the fly. You may also have to reconfigure the location of the sql monitor trace file.
2. Open dbmonitor (the tool from your site that comes with the driver).
3. Run the project.
4. Go to the dbmonitor window. There is an extra query to retrieve child records. See the screenshot below and the selected query. The parameter value is 0 which is the value that was set at design time. This query is redundant. If you change the driver to the dbexpress Oracle driver you'll notice that no such query is executed (check the c:\temp\dbexpress_log.txt file, that is the sql monitor trace file). The next query retrieves the child data associated with the first row (parent id=1).
When you have lots of child datasets the driver will execute a dummy query for each child dataset which can affect the performance of the application.
What can be done to get rid of this redundant query?
One more thing to add, the query for the child dataset in this sample project is contrived, in the real app it has the pattern: select * from some_view where parent_id = :ID.
Thanks
devart driver runs an extra child query
Discussion of open issues, suggestions and bugs regarding usage of dbExpress drivers for Oracle in Delphi and C++Builder
Return to “dbExpress driver for Oracle”
Jump to
- General Forums
- ↳ Announcements
- Database Tools
- ↳ dbForge for MySQL
- ↳ dbForge for Oracle
- ↳ dbForge for PostgreSQL
- ↳ dbForge for SQL Server
- ADO.NET Data Providers
- ↳ Entity Framework support
- ↳ LinqConnect (LINQ to SQL support)
- ↳ dotConnect for Oracle
- ↳ dotConnect for MySQL
- ↳ dotConnect for PostgreSQL
- ↳ dotConnect for SQLite
- ↳ dotConnect for DB2
- ↳ dotConnect for SQL Server
- ↳ dotConnect for Cloud Applications
- ↳ dotConnect Universal
- ↳ Entity Developer
- Delphi Data Access Components
- ↳ EntityDAC
- ↳ Universal Data Access Components
- ↳ Oracle Data Access Components
- ↳ SQL Server Data Access Components
- ↳ MySQL Data Access Components
- ↳ InterBase Data Access Components
- ↳ PostgreSQL Data Access Components
- ↳ SQLite Data Access Components
- ↳ VirtualDAC
- dbExpress Drivers
- ↳ dbExpress driver for Oracle
- ↳ dbExpress driver for SQL Server
- ↳ dbExpress driver for MySQL
- ↳ dbExpress driver for InterBase & Firebird
- ↳ dbExpress driver for PostgreSQL
- ↳ dbExpress driver for SQLite
- ODBC Drivers
- ↳ ODBC Drivers
- Network Security
- ↳ SecureBridge
- Developer Tools
- ↳ Code Compare
- ↳ Review Assistant
- ↳ LINQ Insight
- ↳ SSIS Data Flow Components
- ↳ Excel Add-ins