When using SQL pass-thru queries in MS Access, there is a default time-out of 60 seconds, at which point an instruction is sent to the remote server to cancel the request. Is there anyway to send this command from the keyboard similar to Access' own "Ctrl + Break" operation?
MS Access cancel execution of pass-thru query keyboard shortcut
4.7k Views Asked by Matt Donnan At
1
There are 1 best solutions below
Related Questions in MS-ACCESS
- Joining date fields from 2 separate tables in Access 2010. Outer join is acting like an inner join
- Access Global not working
- Dividing summed field by another summed field in the same query
- Edit fields in local table linked to PassThrough Query
- Change Index Settings Access VBA
- On click change chart query in ms access
- Access 2013 - Set a field value based on value of another field
- MS Access, Combobox, select fields bases on query, How do I weight the result fields
- Access SQL: Not Equals on Null Text Field
- MS Access If Function
- How to convert MS Access Database to Mysql with french characters
- MS Access: How to group by first column- summing some columns while keeping others the same
- Using an ODBC connection in Access get retrieve data from DB2
- How to Continuously Develop and Deploy an Access 2010 Database Application
- Adding calendar in ms access and view the data of specific day by clicking the date
Related Questions in ODBC
- microsoft odbc driver manager data source name not found and no default driver specified
- Edit fields in local table linked to PassThrough Query
- Using an ODBC connection in Access get retrieve data from DB2
- IIS7 SQL ODBC and Server 2008 R2 (converted site from IIS6 2003 to 2008 R2 IIS7)
- Microsoft Access connection to MYOB ODBC developer mode
- RODBC on an Oracle Database and special characters
- How to configure DNS for microsoft odbc driver for oracle (in 64 bit arch.)
- How to refresh linked tables if Access disconnects from MySQL database server?
- Cannot insert data over Linked Server into Redshift
- New Datastax driver for Tableau is not working
- C++ [ODBC]-MSSQLExpress 2008 SQLSTATE: 28000 || 42000
- ODBC with FreeTDS PHP Not working via HTTP
- "Unable to find the requested .Net Framework Data Provider", MySQL. tried using odbc too
- How to extract and store ODBC with driver pairs
- c# Tableadapter fails to update through odbc
Related Questions in PASSTHRU
- webservice reference shenanigans
- Mac OSX Convert library (html file to pdf) works via terminal but not PHP
- MS Access cancel execution of pass-thru query keyboard shortcut
- PHP running a shell script to scp
- Evdev and Hidraw devices
- I'm having trouble with the passthru() function when redirecting stderr to stdout
- How to use Powershell to batch copy files and output their success or failure to a log file
- Continue execution after calling php passthru() function
- Using passthru() to download file results in broken/modified file
- Executing tcl script inside php
- DDK sample passthru not loaded in win7
- MS Access Passthrough Query Update
- Postgresql with IBM App Connect Enterprise
- PHP passthru with proper child process closing
- Realtime output in CakePHP
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Firstly, understanding how Control-C cancels execution. They probably trap that key sequence, and do something special. I strongly suspect that oracle's client apps (SQL*Plus et al) are calling OCIBreak() behind the scenes, and passing in the handle to the server that they obtained when they executed the query with a previous OCI call.
I also suspect that Access isn't doing anything actively after 60 seconds; that's just the timeout it requests at time of execution query. Even more so, I'm beginning to wonder if Access is even requesting that timeout; everything I've read says that the ODBC driver does not support a query timeout, which makes me think it's just a client-side timeout, but I digress...
So - back to this OCIBreak() call. Here's the bad news: I don't think ODBC implements these calls. To be 100% sure, you'd have to take a look at the ODBC driver for oracle sources, but everything I've read indicates that the API call is not exposed.
For reference, I've been googling with these search terms in combination with "OBDC":
--- EDIT #1 ---
As a side note, I really believe that Access is just giving up, and not sending any type of cancel command when the Pass-Through timeout is exceeded. If you take a look at this kb article, the ODBC Driver doesn't even support a query timeout:
PRB: Connection Timeout and Query Timeout Not Supported with Microsoft Oracle ODBC Driver and OLE DB Provider
After the elapsed time, Access probably just stops listening for results. If you were to ask oracle for a list of queries that are still executing, I strongly suspect you'd still see yours listed.
--- EDIT #2 ---
As far as implementing your own "cancel" -- which isn't really a cancel, more of a "keep the UI responsive regardless of the state of a query" -- the keyword here is going be asynchronous. You're going to want to rewrite your code to execute asynchronously so that it isn't blocking the message pump for your UI. I'd start googling for "async query access" and see what pops up. One SO result came up:
Running asynchronous query in MS Access
as well as a decent starting point at xtremevbtalk.com:
http://www.xtremevbtalk.com/showthread.php?t=82631
In effect, instead of firing off code that blocks execution until either a timeout occurs or a result set is returned, you'll be asking access to kick off the code behind the scenes. You'll then set up an event that fires when something further happens, such as letting the user know that the timeout occurred (timeout failure), populating a grid with results (success), etc...)