Browse the complete reference
Search and topic navigation need JavaScript. The complete text is available below.
Start with SQL Hop
What you need
- An activated SQL Hop account in an approved organization, with an eligible active trial or paid subscription.
- SQL Hop Desktop for your computer and an internet connection for first activation.
- An organization instance configured by your client admin, plus your own authorized Oracle credentials.
Account website and query application
Ordinary web accounts do not show the SQL workspace, saved-query/history menus or query tools. Organization admins still configure instances and members on the website. The web editor is retained for future explicit enablement; it is not a customer query option today.
First successful query
- Create and activate your account, then wait for the required organization or invitation approval.
- Open Downloads and choose Windows, Mac Intel or Mac Apple Silicon. Install SQL Hop Desktop.
- Sign in online with your SQL Hop account. This registers one computer to your user/seat.
- Select your organization’s instance and connect using your Oracle credentials.
- Run the harmless SQL below. A successful result contains CONNECTION_OK = 1.
SQLSELECT 1 AS CONNECTION_OK
FROM dual
Continue working
Explore editing, designer, results and export guides. Desktop saved queries stay on that computer; the website is not a synchronized copy of that local database.
Web, desktop and access rules
An approved, eligible organization receives a one-time 30-day trial, starting at approval, for up to 10 users including admins and pending invitations. Trial querying runs in SQL Hop Desktop.
Paid users also query in Desktop. The website provides account security, subscription/billing and support. Client admins configure their organization’s members, instances and permitted AI access there. The customer website hides SQL editing, execution, saved-query/history and AI query tools. Super admin retains privileged web execution.
Desktop sends SQL directly to the configured Oracle reporting service. Results, local queries, designer state, history and export jobs stay on the computer. Optional AI sends reviewed SQL and instructions to its configured service, never result rows. Account/device/subscription checks contact SQL Hop.
First activation requires an online sign-in. Registered desktop authorization is checked at startup and every 24 hours while open. If the account server is unreachable, existing signed authorization can permit local work for at most 48 hours since the last successful validation, never beyond the known trial or subscription end. Explicit blocked/expired/revoked responses stop new queries and exports. Restarting does not reset the deadline.
Desktop work is not automatically synchronized to the web or to another computer. Existing web drafts and saved queries are retained, not migrated or deleted by the access change. Use SQL file import/download where the workspace is available. Web execution can be explicitly re-enabled by the operator in a future deployment.
Create an organization and activate your account
Create an account
- Select Create an account on the public website.
- Enter the requested organization, contact and account information. Use an inbox you control.
- Open the activation email and follow its link to set your password.
- Wait for the platform owner to approve the organization.
Approval and trial start
Activation proves access to the email inbox. It does not approve an organization. Workspace access remains blocked until super-admin approval. The 30-day trial begins at approval, not at signup or email activation.
Existing or deactivated accounts
Use your existing credentials or password reset instead of creating another account. Contact your organization admin if the account is disabled. New organizations with the same business domain or Oracle instance can subscribe independently; previous trial use is still checked for each user.
Email did not arrive
Check Spam and verify the address. Expired or cancelled links need replacement. During a sandbox email rollout, recipient verification may be required by the delivery provider; ask the platform owner rather than retrying repeatedly.
One-time trials and eligibility
Trial entitlement
The organization trial lasts 30 days from approval and includes up to 10 seats. Admins and pending invitations count toward that limit. Trial querying runs in SQL Hop Desktop.
Every participating user counts
Trial usage is tracked for users, not only the founding admin. Becoming an admin, creating a new organization, cancelling or re-registering does not grant a second trial. Inviting a previous trial user cannot be used to repeat free access. Only super admin can grant an exception.
Independent teams
Sharing an email domain or Oracle server does not by itself block separate teams from subscribing. Trial identity checks still apply to their individual users.
At trial expiry
Query access stops; accounts and saved SQL are retained. Account and billing access remain on the web so the organization can subscribe. After the trial ends, desktop querying requires an active paid plan.
Desktop device and validation
Each named user has one registered computer. Activate online in SQL Hop Desktop. Validation runs at startup and every 24 hours while open. If the account server is unavailable, existing signed authorization permits local work for up to 48 hours from the last successful validation, capped by the known trial or subscription end. An explicit blocked, revoked or expired response stops new queries and exports. Existing SQL and results are retained. Restarting never extends authorization.
Replace a computer
On the website open Account security, verify identity with your password and existing factor, then select Transfer to another computer. Sign in on the replacement. The old computer may continue only until its next validation or existing signed deadline.
Sign in, sign out and session replacement
Sign in
Use your SQL Hop email and password, not Oracle credentials. Complete any configured MFA step. The desktop login currently supports authenticator and recovery codes; security-key-only login is not offered by its login form.
Web and desktop sessions
Web and desktop sessions are separate. Signing in on the website does not by itself end desktop authorization. A newer login on the same client type can replace its previous session; password, factor or account changes may invalidate access. One registered computer is allowed per user/seat.
Guided web tour
Non-super-admin users receive a three-step getting-started tour after each new web login. It starts with the desktop download link. Closing or finishing does not opt out. Select Don’t show this tour again to save the preference to your account across browsers. Getting started tour in the sidebar reopens it and lets you change that preference.
Sign out
Use the door-and-arrow icon in the top bar. Web sign-out returns to the home page. Desktop sign-out removes active cookies and cached authorization but retains opted-in encrypted app credentials. Use Sign in with saved app credentials for a fresh online sign-in; Forget saved login removes those credentials.
Idle time
Web idle sign-out is ten minutes for ordinary accounts. Desktop offers a 30-second warning; Extend adds five minutes, including subsequent extensions. Ignoring the warning ends the session. These idle rules are separate from the 24-hour device check and do not extend offline authorization.
Activate or reset an app password
Reset a password
- Select Forgot password on the web sign-in page.
- Enter your account email and submit the request.
- Open the newest reset email and use its link.
- Enter and confirm a password that meets the form requirements.
- Return to sign-in and use the new password.
Link errors
Reset and activation links expire and are single-use. Older links may be invalid after a new request. Do not forward them or paste them into a support message. Request a fresh link if needed.
Pending organizations
Password reset can work before organization approval. It does not bypass the approval requirement or start a new trial. Successful reset events are recorded in the audit log.
Two separate identities
Resetting an app password does not reset Oracle credentials or remove two-factor authentication. Contact the relevant administrator for those changes.
Authenticator codes, physical keys and recovery codes
Open account security on the web
Use Account security in navigation or the account icon at the top. Verify your current app password and an existing factor when required before making changes. The verified security-settings window is temporary.
Authenticator app
Choose Set up authenticator app, scan the QR code with your chosen authenticator and enter its current six-digit code. Confirm the setup before relying on it.
Physical security key
Register physical security key requests an external USB/NFC key. Choose the physical key in the browser prompt, then complete its PIN or touch request. A platform passkey stored on the computer is different from a physical key. Browser support and device policy may affect the prompt.
Recovery codes
Generate codes and store them securely outside the app. Each can be used once. Generating another set invalidates the previous set. Never send recovery codes to support.
Desktop and hostnames
Desktop sign-in currently offers authenticator or recovery codes, not a physical-key prompt. WebAuthn keys belong to the hostname where they were registered. A numeric LAN IP is not suitable for the current physical-key configuration; use the approved hostname shown on Account security. Do not bypass certificate warnings.
Lost access
An organization admin can reset a regular member’s factors within their own organization after verifying the request. The user must enroll again; resetting a factor does not change Oracle authentication.
Remember app and Oracle credentials
Remember the app account
Select Remember my app login and keep me signed in on this computer during desktop sign-in. The account server, username, password and saved session are encrypted with operating-system protection. On restart, Remember me can resume a previously registered account using signed device authorization after attempting online validation. If the account server is unavailable, only the remaining authorized grace period applies. Otherwise use Sign in with saved app credentials and complete fresh MFA if required. Explicit sign-out removes cached authorization; it does not create an offline login.
Remember Oracle separately
In the Oracle connection form, select Remember Oracle credentials on this computer before a successful connection. Next time, use Connect with saved credentials. Password fields may remain empty deliberately; that does not mean the encrypted entry is missing. The checkbox reflects an existing saved entry.
Removal and isolation
Forget saved login removes app credentials. Explicit desktop sign-out ends the session and removes its saved session cookies, but retains your opted-in encrypted username and password for a fresh sign-in. Idle expiry ends the session without deleting its encrypted app credentials. Oracle Disconnect clears the active connection; Oracle Forget saved credentials removes its saved entry. Saving is unavailable if protected OS encryption is unavailable.
Scope
Oracle entries are isolated by app account, account-server address, instance and report settings. A different app account or changed instance configuration does not reuse another entry. Signing in through localhost versus a LAN URL can select a different local account scope.
Troubleshooting
Use the same packaged app and account-server URL. After an update, reopen the rebuilt app yourself. If a previous version removed a saved entry, re-enter it once and select Remember. OS-encrypted storage is not a promise that someone with control of your signed-in computer can never access secrets.
Open and update SQL Hop Desktop
Download and activate
- Open Downloads on the website. OS detection recommends Windows or Mac; choose Intel or Apple Silicon on Mac if architecture cannot be detected.
- Review the version, release notes, file size and SHA-256 checksum. Only published installers are offered.
- Install and open SQL Hop Desktop. Use the account-server HTTPS origin supplied by the operator, without a page path. Use sqlhop.com when that deployment is available; local testing uses its supplied address.
- Sign in with an approved active trial or paid SQL Hop account and complete supported MFA. First online activation registers this computer to your seat.
- Choose the admin-configured Oracle instance and connect with your own Oracle credentials.
Updating
Install the correct published platform release and reopen it yourself. A website update does not update an already-running desktop binary. Preserve the application-data directory, which holds local work and encrypted credentials. The splash shows the version; About SQL Hop also shows the build date.
Local work and authorization
Saved queries, designer state, drafts, result snapshots, history, exports and downloaded metadata are local. Signed device authorization supports a bounded account-server outage, not unlimited offline use. Oracle itself and AI still need their respective network services.
Administration
Account security, device transfer, organization administration and billing are managed on the website. Desktop has no administration console.
HTTPS, local testing and account-server addresses
On the server computer
localhost and 127.0.0.1 refer to that computer. A separate Windows or Mac device cannot use them to reach your server.
Across a home network
Use the HTTPS address supplied by the operator, including its port. The development example is https://192.168.86.20:8443. The address may change with the network. Use the certificate setup instructions for that device and ask the operator if trust is not configured.
Distinguish failures
- Site cannot be reached: check server status, address, port, network and firewall.
- Certificate warning: trust/hostname setup is incomplete. Do not send credentials through an untrusted connection.
- Oracle remote sign-in restriction: use the configured HTTPS gateway rather than the HTTP development port.
- Invalid domain during key registration: physical-key/WebAuthn origin settings require a supported hostname; this is separate from normal password login.
Stable desktop account scope
Keep the same HTTPS account-server URL for a local profile. Switching server origins creates a separate account scope and can make local saved work or Oracle credentials appear absent.
Connect and disconnect Oracle
Connect
- In the workspace choose the configured instance.
- Select Connect. If you press Run while disconnected, SQL Hop opens the form and remembers that execution request.
- Enter Oracle username and password, then select Connect or Verify and connect.
- Wait for the one-row QueryRunner check. Inputs are disabled while the request is active.
- A green connection indicator confirms the active connection. A pending Run continues after success only if the relevant tab, SQL and selection are unchanged.
Credential handling
For super-admin web execution only, Oracle credentials are held temporarily in the signed-in backend session, for up to 30 minutes, and are not saved to our database, files or browser storage. Desktop credentials stay on the computer and may optionally be saved with OS encryption. Never enter app credentials in the Oracle form.
Disconnect
Use the disconnected/connected plug button. Disconnect or app sign-out clears the active connection. A desktop connection is independent of an account-server restart. Reconnect if the local Oracle connection expires or is disconnected; super-admin web connections need reconnecting after a backend restart. Connection state belongs to your session; another user’s connection does not authenticate you.
Boundaries
Trial and paid accounts connect in SQL Hop Desktop. No existing Oracle browser SSO cookies are reused. A failed Oracle check must not be treated as a successful connection.
Prepare the QueryRunner reports
Prerequisites
Use an Oracle administrator or authorized report developer with catalog and data-model permissions. The app cannot grant Oracle permissions or repair a client’s Oracle identity policy.
Setup process
- Open Instance setup on the web and download the setup package and instructions available there.
- Review the supplied QueryRunner data-model SQL and the installation guide.
- Create or upload the supported report objects using the package instructions. A source/setup ZIP is not automatically an Oracle catalog-import archive; use an archive only if it is explicitly supplied as such.
- Use the configured report path, commonly /Custom/QueryTool/QueryRunner.xdo, and grant the intended Oracle users report access.
- Verify the report in Oracle, then connect from SQL Hop with a harmless query.
Version compatibility
Install the current QueryRunner definition. Older definitions may cap results at 200 rows, restrict comments or reject longer SQL. Desktop background exports require report chunk-download access. A report working in the Oracle editor alone does not prove the service identity can execute and download it.
Application versus Oracle objects
Deleting an instance in SQL Hop removes application configuration; it does not delete Oracle reports or saved queries. Test setup on DEV before using another environment.
Manage organization instances
As a client admin, open Environments on the website. Use the instance table and its add/edit controls. Supply a useful name, HTTPS Oracle origin and report path. An origin is the server address without a page path; a report path begins with /.
Edit and delete
Edit a table row to change its settings. Delete removes access to that configuration in the app; it does not delete anything in Oracle or erase saved queries. Removed entries can be restored where the screen offers Restore. Reconnect after endpoint or report settings change.
Organization scope
Client admins manage only their own organization’s instances and members. The same Oracle server can be configured by independent teams. Each user still needs their own authorized Oracle credentials. The built-in DEV entry is manageable by the platform owner.
Desktop synchronization
Desktop receives allowed instance profiles at sign-in and successful scheduled validation. Changes may take until the next startup or 24-hour check to reach an already-open app. It cannot edit them locally. Changing a profile can invalidate its active connection and select a different encrypted credential entry.
Oracle SSO and supported authentication
Current supported flow
Trial and paid users use the existing Oracle username/password connection in Desktop; super admin can also use the retained web connector. SQL Hop app sign-in and two-factor settings protect the app account; they do not implement Oracle SSO.
Browser SSO is separate
An Oracle sign-in button may redirect to Microsoft, but a browser session or identity token does not automatically authorize the BI Publisher service. SQL Hop does not copy the browser’s Oracle cookies.
What is deferred
Oracle SSO integration is deferred until an authorized identity-domain/application configuration and a testable service flow are available. Microsoft SSO for the SQL Hop app login is also not an enabled replacement for current password login. Do not expect Office 365 credentials to work in the Oracle direct connection unless the Oracle administrator explicitly supports that flow.
If direct authentication fails
Ask the Oracle administrator which service identity and authentication policy can execute the configured report. Do not disable MFA or reuse browser cookies as a workaround.
Write SQL and organize the workspace
Layout
The SQL editor and results use the remaining window height. Drag the horizontal divider to change their proportions. Focus the divider and use arrow keys for keyboard resizing; double-click resets it. Expand either pane for more space, then restore it or press Escape.
Use toolbar icons for Run, Run All, Stop, Undo, Redo, uppercase/lowercase selection, font size, Find and replace, Format SQL, designer, Columns, Describe, Save, SQL import/download, Save All, Save As and permitted AI. Hover or focus an icon for its label.
Existing results
Changing editor text, formatting or applying/undoing an AI proposal keeps the current results until another execution replaces them. The visible results can therefore belong to older SQL. Exports use the executed SQL snapshot where available.
Responsive navigation
On narrower windows use the navigation menu button. Open it to reach account and workspace pages; close it with Escape, the backdrop or a navigation link. Desktop uses the same workspace appearance with OS-native shortcut conventions.
Query tabs and workspace restoration
Add and rename
Use the plus button for a new tab. Names are unique within the workspace. Double-click a tab name or use Rename tab to change it. Query numbers shown for saved queries are per user, beginning at 1; internal database IDs are separate.
Up to 100 tabs
The workspace supports up to 100 open tabs, including Save All and restored workspaces. Scroll the tab strip when needed; the plus control remains reachable. Close tabs you no longer need. Discard confirmation appears for unsaved SQL or designer changes.
Restoration
Web drafts are saved to the signed-in account; desktop drafts are saved in its local account-scoped workspace. Tab SQL and designer data can restore on reopening. Temporary result snapshots and parameter values are not permanent workspace backups. Use Save for named queries and export results you need to retain.
Independent results
Tabs keep their own query/result state. Run All adds result-set tabs inside the current query tab. Do not confuse those with the top-level query tabs.
Save, Save As and Save All
Save
The save icon and Ctrl+S / Cmd+S do the same thing. If the tab is linked to a saved query, Save updates it directly. For a new query, a dialog opens with the tab name prefilled. Save records SQL placeholders and designer state; parameter values are not saved.
Save As
Use Save As or Ctrl+Shift+S / Cmd+Shift+S to create another named query. The current tab links to the new copy. The original remains unchanged and its designer state is independent.
Save All
Save All saves all non-empty tabs with their names, updating linked queries and creating new ones where needed. Designer-only changes are included even if you have not generated new SQL. Use Ctrl+Alt+S on Windows/Linux or Cmd+Option+S on Mac.
Reopening
Open a saved query from Saved queries. Its designer can restore for editing. If a linked saved query has been removed or is unavailable, keep your editor SQL and save a new copy rather than discarding work. Desktop saves stay local; web saves belong to the web account.
Open and download SQL files
Import
Use Open SQL file and select a .sql file. Its contents open in an editor tab without executing. Review the text and any local syntax messages before running it. Browser file-picker or OS permissions may be required.
Download
Use Download SQL file to save the editor contents as .sql. This exports SQL, not result rows or saved parameter values. A text file does not carry the full editable visual-designer state.
Download the SQL from the source workspace and open it in the destination. Web saved queries and desktop-local saved queries are distinct. Importing a file does not grant Oracle access or sign you in.
When the picker does not open
Check whether another file chooser or modal is already open. In desktop, use the rebuilt packaged app and its native open-file action. Do not paste credentials into a SQL file to work around a connection issue.
Formatting, case, font size and undo
Use Format SQL next to Auto-format on run. Manual formatting changes editor text only; enabling Auto-format applies formatting as part of Run. Clause alignment follows the SQL Hop style. ORDER BY is an alignment exception.
Select text to enable uppercase and lowercase tools. Use Ctrl/Cmd+Shift+U or Ctrl/Cmd+Shift+L. Case conversion affects the selected text, including any literals you select; review before running.
Use A− and A+ to adjust editor text size. The SQL editor uses a fixed-width font so columns and indentation line up. Browser zoom also affects the wider interface.
Undo reverses editor changes, including replace-all and applied AI SQL. Redo reapplies them. These actions do not execute SQL or clear an existing result set. Standard OS shortcuts are listed in Keyboard shortcuts.
Open the sliders icon beside Format SQL to customize keyword, table/view, alias, function and data-type case; clause alignment; indentation size or tabs; expression wrapping; AND/OR line breaks; statement spacing; operator spacing; and semicolon placement. Preview changes before saving. Preferences are remembered for your account on this device and apply to manual formatting and Auto-format on run. Saving preferences does not change or execute the editor SQL. Restore defaults resets the preview to the SQL Hop style; select Save preferences to keep the reset. The default uses uppercase SQL keywords and function names, and lowercase unquoted table/view names and aliases. Quoted identifiers, column names, literals and parameter names keep their case. Use Undo after formatting to restore the original SQL.
Find and replace SQL
Open the combined panel
Use the single Find and replace icon. Ctrl+F / Cmd+F opens find; Ctrl+H or Cmd+Option+F opens replace. Enter the text to find and, when needed, the replacement.
Work through matches
Use the next and previous controls, F3/Shift+F3 where supported, or Ctrl/Cmd+G and its Shift variant. In the search field, Enter and Shift+Enter move between matches. Check the available matching options before replacing.
Replace
While a search-panel field has focus, Ctrl/Cmd+Enter replaces the next match. Ctrl+Alt+Enter on Windows/Linux or Cmd+Option+Enter on Mac replaces all. These shortcuts do not run SQL from the search panel. Undo can restore a replace-all change.
Close
Press Escape to close the panel and return focus to the editor. Existing query results remain visible.
Real-time SQL checks and autocomplete
Local grammar feedback
The editor checks Oracle-style SQL while you type, including joins, subqueries and CTEs. Correcting the SQL clears the diagnostic after the next check. Local checking does not execute the query, contact Oracle or clear results.
Oracle remains authoritative
Local grammar checks are advisory and do not block Run. Valid version-specific Oracle syntax can exceed the local grammar. Object existence, permissions, type rules, bind semantics and execution plans still require Oracle to validate them. A green local status is not a guarantee of successful execution.
Suggestions
Use Ctrl+Space to request suggestions. Table suggestions use the available metadata. After declaring table aliases in FROM/JOIN, type alias. to request that table’s columns, including in the SELECT list. Columns are not all inserted or loaded into SQL automatically.
Missing suggestions
Check the table spelling, alias declaration and chosen metadata publication. Desktop needs its optional autocomplete package downloaded and enabled. Describe and Columns depend on imported metadata, not a live schema introspection promise.
Run a query, fetch rows and stop waiting
Run
Run executes selected SQL when the editor has a selection; otherwise it runs the editor’s single statement. Ctrl+Enter / Cmd+Enter is the shortcut. Multiple statements prompt you to use Run All rather than sending an entire script as one query.
Fetch Rows
Fetch Rows is the maximum number of rows collected for the execution, currently offered up to 10,000 for interactive use. It is separate from Rows per page, which only changes how many already-fetched rows are displayed at once. Your last fetch setting is remembered.
While running
The spinner and elapsed clock continue through Oracle execution, fetching and first display. The clock stops when data is presented. Parameter entry time is excluded. Oracle querying runs locally in SQL Hop Desktop.
Stop
Use Stop beside Run to cancel waiting in the app. A queued request can be removed before Oracle is contacted. For a request already submitted, Oracle database execution may continue; Stop is not a guaranteed database kill.
On failure
Read the error details. SQL stays in the editor. A failed execution does not show previous result rows as though they were the new result.
Run All and separate result sets
Prepare the editor
Separate read queries with semicolons. Use Run All or Ctrl/Cmd+Shift+Enter. SQL Hop runs statements sequentially rather than as one Oracle script.
Parameters
Each parameterized statement asks for its values. Values are only for that execution. Cancel a parameter dialog to avoid running that pending request. Review mixed lexical parameters before continuing.
Results
Switch result-set tabs to see each statement’s output. Each result set retains its own filters, sort order and selected rows. Its exports use that set’s controls and executed SQL snapshot.
Errors and cancellation
Run All stops after an error; remaining statements are not run. Stop cancels the app request, subject to Oracle’s execution limitations. The elapsed display for a batch represents the overall execution rather than proof that statements ran in parallel.
Named :NAME parameters
Write placeholders
SQLSELECT :P_NAME AS NAME
FROM dual
Use :NAME placeholders in ordinary value positions, such as WHERE item_number = :X. Run opens a dialog with text, number, date or NULL types. Enter an apostrophe as ordinary text, for example O'Brien; do not add surrounding SQL quotes yourself.
Run or cancel
Enter submits the dialog once. Cancel, Escape or clicking outside closes it without running the query or adding a query-history entry. Running again asks for fresh values after cancellation, success or failure.
Privacy
Saved queries, SQL-file downloads and the optional SQL worksheet in an Excel result export keep placeholders. Parameter values are not saved in query history or application logs; failed parameterized history uses sanitized errors. Values can still affect or appear in the result rows you intentionally export.
Implementation limit
Current :NAME support uses typed, escaped substitution before the report request. It is not native Oracle DBMS_SQL binding. Native Oracle binds are deferred. Keep placeholders for values; use lexical parameters only for intentional SQL fragments.
Lexical &NAME and &&NAME parameters
Lexical versus value
A :NAME parameter represents a typed value. A lexical &NAME or &&NAME inserts a SQL fragment, such as a column list or condition. SQL fragments are not automatically quoted as values.
SQLSELECT &COLUMNS
FROM egp_system_items_b esib
WHERE esib.item_number = :ITEM_NUMBER
Review before execution
Run asks for lexical fragments and other values. Select Review SQL, inspect the expanded SQL, then run the reviewed version. If a fragment introduces more :NAME placeholders, fill the extra fields and review again. Changing a value invalidates the prior review.
Fresh on every run
&&NAME does not permanently remember a value in SQL Hop. Both lexical forms start fresh each run. Cancelling, Escape or backdrop dismissal does not execute the query.
Use deliberately
A lexical fragment can change the query’s structure. Do not treat untrusted fragments as harmless scalar values. The original editor placeholders remain unchanged, and values are not stored with saved SQL.
Privileged web query queue and concurrency
Who uses the server queue
Customer trial and paid queries execute locally in Desktop and do not enter the web query queue. Super-admin web execution remains available. The retained queue also applies if the operator explicitly enables eligible customer web querying in a future deployment.
Default limits
While waiting
Queued status shows the position before Oracle dispatch. Cancelling removes a queued operation. Authentication, entitlement, seat limits and maintenance are checked again when a slot opens.
Scope and capacity
This queue is process-local, not a distributed scheduler or a capacity promise. A full queue or timeout is a reason to reduce duplicate submissions. Oracle may continue work already submitted after application cancellation.
Build a query visually
Open the designer
Select Query designer from the editor toolbar. Search the available metadata to add tables. Assign distinct aliases so column references and joins are clear.
Choose columns
Select the output columns and aliases you need. Metadata must contain the tables and columns before the pickers can show them. Selecting a table does not grant database access.
Add joins
Choose the participating table aliases, join type and matching columns. Check that the condition represents the intended relationship; the designer cannot infer business meaning or guarantee that a join avoids duplicate rows.
Generate and review
Generate SQL into the editor when ready. Review the complete statement and run it explicitly. Filters, sorting and aggregates have their own designer guides. Generation does not automatically execute Oracle SQL.
Hand-written SQL
The designer keeps a saved design model for a query. Do not assume arbitrary editor edits are reverse-engineered into that model. Review generated SQL before replacing manually edited SQL.
Designer WHERE conditions and ORDER BY
WHERE conditions
Add a condition using a selected table alias and column. Choose an available comparison and supply the intended value or parameter. Check NULL handling and text versus numeric values. Combine conditions using the controls provided; inspect the resulting grouping in generated SQL.
ORDER BY
Add columns to the sorting list and select ascending or descending direction. The order of sort fields determines precedence. A stable SQL ORDER BY is different from sorting an already collected result grid.
Review
Generate SQL and verify the WHERE and ORDER BY clauses in the editor. Use :NAME parameters for changing values rather than editing literals each run. Oracle validates object names, types and permissions during execution.
Results filters are separate
A result-column filter only narrows the collected snapshot. It does not add a WHERE clause or re-run Oracle. Use designer conditions to reduce the actual query output.
GROUP BY, HAVING and aggregate functions
Choose aggregates
In the designer choose an aggregate for an output column, such as COUNT, SUM or AVG. Use suitable numeric columns for arithmetic aggregates. COUNT(*) counts rows; COUNT(column) excludes NULL values.
Grouping
Add grouping columns for the non-aggregated output fields. A detail column mixed with aggregates usually needs GROUP BY. Check the generated SQL rather than assuming that selecting a function alone produces the intended summary.
HAVING
Use HAVING to filter grouped/aggregate results. WHERE filters source rows before grouping. Choose the aggregate expression and comparison using the designer’s available controls.
Review results
Check aliases, GROUP BY, HAVING and ORDER BY in the generated statement. Oracle may reject invalid combinations or incompatible data types. The designer does not validate business totals against source reports.
Save and restore editable designs
What is remembered
A query’s designer state includes its selected tables, aliases, columns, joins, conditions, sorting, grouping and aggregate settings. Reopen the designer on that query to continue instead of starting again.
Save without generating SQL
Designer-only changes can be saved even if you have not generated new editor SQL. Save and Save All persist the design along with that query. Save All handles each query independently.
Save As
Save As creates a separate editable design copy. Editing the copy must not change the original. Reopen the original from Saved queries to inspect its own model.
Logout and transfer
Saved web designs restore to the same authorized account after login. Desktop designs belong to the local account workspace. A .sql file contains SQL text, not the complete visual design. Do not use SQL-file transfer as a full design backup.
Choose columns from tables and aliases
Declare the table and alias in your SQL, open Columns, choose the recognized table/alias, and select the required columns. Confirm insertion and review the edited SELECT list. Checkboxes choose fields; they do not execute a query.
Alias suggestions
After declaring an alias, type alias. in the editor to request that table’s columns, including in SELECT. Ctrl+Space can reopen suggestions. Multiple tables and joins should use distinct aliases.
If a table is missing
Check spelling and the FROM/JOIN syntax, then confirm the table exists in the published metadata. Complex SQL scopes may need manual editing when alias recognition cannot resolve them. The metadata is a shared description catalog, not a live Oracle permission check.
If columns are missing
Ask the platform owner to verify column batches were imported and published. On desktop, download and enable the autocomplete data. Refresh the catalog after publication or download rather than inserting all columns automatically.
Describe column types, sizes and comments
Describe a table
Use Describe table from the toolbar and identify the table. Review column names, types, lengths or precision/scale, nullability and comments when those fields exist in the uploaded data.
Source of the details
Describe uses imported metadata. It is not a guarantee that the current Oracle instance has exactly the same schema. The published catalog may be older than the instance.
An empty comment may mean Oracle did not supply one or the extract did not include the comment field. The importer cannot invent business descriptions. Ask the platform owner to check the original workbook and its recognized headers.
Empty sizes or missing columns
Confirm the relevant column file includes those fields and was published. Download the current desktop metadata package if using desktop. Query access to a table and availability of its catalog description are separate checks.
Shared metadata and publication
The platform owner uploads Oracle object/table and column descriptions centrally. Published data can serve users across organizations. It is not an upload of business result rows and does not confer Oracle query permission.
Table/object files and column files can be uploaded separately. Worksheet identification uses recognized headers rather than requiring a particular sheet name. Large alphabetic batches are merged instead of replacing all prior column data.
Imported data is staged before publishing. Users consume the published catalog, not incomplete staging work. After a publication, refresh or download the updated catalog as appropriate.
Only tables and columns present in the extract can appear in metadata tools. Comments and sizes are optional source data. There is no automatic Oracle table-update or metadata-schedule feature to keep this catalog current.
Public Oracle documentation can enrich matching table/column descriptions and functional areas. Unavailable pages and missing comments are different conditions; missing documentation remains blank. Desktop packages must be rebuilt/published separately, then downloaded again. Do not assume an older local snapshot has received newer comments.
Download autocomplete data in desktop
Download
- Sign in to desktop with an approved active trial or paid access.
- Open Autocomplete data in navigation.
- Download the available metadata package and enable it.
- Wait for verification and installation to finish, then return to the editor.
What it enables
The local catalog supports table suggestions, alias-column suggestions, Columns, Describe and designer table/column pickers. SQL execution can still use manually written names when metadata is absent.
Storage and updates
The metadata package is downloaded to the local application-data directory rather than bundled into every installer. Download a newer published package when the platform owner updates it. You can disable use of the package using the screen’s control. The separate import action accepts a compatible metadata package, not arbitrary XLSX business data.
Troubleshooting
A download needs a valid account entitlement, network access, available disk space and a valid package. Do not delete the local workspace database to refresh autocomplete. No credentials or query results are included in the metadata package.
Download delivery
The account server checks permission and provides a short-lived private Cloudflare R2 download link. Metadata bytes download directly from storage, with checksum verification before installation. This is a published snapshot: documentation enrichment or a server update does not silently refresh an existing desktop download.
Read results and inspect a record
Grid controls
Column headers remain visible while scrolling the grid. Drag a header divider to resize one column, double-click the divider to fit its contents, or use Auto-fit columns to fit the set. Widths are remembered per query where supported by the workspace.
Expanded record
Select View record beside the row number to open a record with column names on the left and values on the right. This is useful for wide tables. It is a view of the selected result row, not a database edit form.
Right-click the results grid or use Shift+F10 with the grid focused to see available result actions. Use only the actions offered for the current cell, row or selection.
Full pane
Expand results for more space and press Escape or Restore results size to return. Filters, sort and selection remain attached to the result set. Changing editor SQL does not silently replace the grid.
Rows per page and total rows
Choose Rows per page to display 10, 25, 50, 100 or 200 rows at a time. The last setting is remembered for the user/workspace. Use First, Previous, Next and Last page controls as available.
Total and matching count
The total describes rows in the collected result snapshot, not necessarily every row in the Oracle source table. Filters can reduce the matching count. A fetch cap can mean more source rows exist than were collected.
Rows per page changes the visible page only. Fetch Rows controls the maximum collected for a new execution. Setting a page size of 25 does not mean an all-results export should contain only 25 rows.
Sort, filters and selections operate across the collected snapshot. Lazy snapshots request pages as needed rather than putting every row in the browser at once.
Filter results by column
Column filter
Select the funnel icon in a column header and set the supported filter condition. Apply it to narrow matching rows across the collected result set, not just the visible page. Use Clear column filters to remove them.
Text search
Use the result search field for the wider text filter. Search and column conditions can work together. A matching count of zero does not prove that Oracle has no such rows outside the fetched snapshot.
Selection
Selected rows remain selected when filters are applied or cleared. Rows hidden by a new filter may still be in the selection. Clear selection explicitly if those should not be exported.
Query versus result filter
A result filter operates on fetched data. To change what Oracle returns or reduce an expensive extraction, add a WHERE condition in SQL or the designer and run again.
Sort across pages and exports
Apply sorting
Choose the ascending or descending icon in a header. The active sort is highlighted. Click the active sort again to clear it where offered. Sorting applies across the result snapshot, including filtered rows, rather than just the current page.
Stable selection
Changing between ascending and descending does not change which underlying rows are selected. A row’s displayed position can change; its selection should remain attached to that row.
Exports
CSV and Excel exports follow the current result sort. Filtered exports use the filtered order; selected-row exports retain the selected rows in the current result order across pages.
SQL ORDER BY
Grid sorting does not re-run Oracle or change the editor SQL. Use SQL ORDER BY if Oracle itself must produce a specified order before collection. Keep each Run All result set’s sort separate.
Select rows across pages and filters
Individual and page selection
Use a row checkbox to select that row. The header checkbox selects rows on the visible page. Move between pages without losing those selected rows.
Select all matching rows
Use Select all matching rows to select rows satisfying the active filters across all pages of the collected result. It does not select source-table rows outside the snapshot and does not mean every unfiltered row.
Filters and sorting
Changing filters, clearing them or switching sort direction keeps selected rows. A selected row can become hidden by a filter. The selected count can therefore be greater than the visible matching rows.
Export
Choose the selected-row option in the export dialog to include selections from all pages, including selected rows currently hidden by a filter. Use Clear selection to intentionally reset it. Each Run All result tab has its own selection.
Export CSV or Excel results
Export data
- Open Export data for the current result set.
- Choose CSV or Excel and review whether all applicable fetched rows, filtered rows or selected rows are being exported.
- Review the filename including its extension, then download or choose the native save location.
Scope and order
Export is not limited to the visible page. It follows the result sort and the selected export scope. Selected-row exports include selection from other pages. A grid filter can hide selected rows without deselecting them.
Filename
The default name uses the query tab name followed by a date and timestamp, with the correct .csv or .xlsx extension. Invalid filename characters are normalized.
CSV separators
Choose the delimiter offered in the dialog, such as comma, semicolon or tab. Text containing separators, quotes or newlines is quoted appropriately. Apostrophes such as O'Brien remain ordinary data. Configure your spreadsheet import settings to match the chosen delimiter.
Excel with SQL
Choose the option to include SQL as a second worksheet. It uses the executed SQL snapshot when available and keeps parameter placeholders; parameter values are not saved to the SQL sheet. Result rows can still contain those values if your query returned them.
Large results and lazy loading
Interactive snapshots
Choose a larger Fetch Rows value, up to the interactive options offered, and run. Large results use a temporary snapshot with page requests instead of rendering every row in the grid. Filters, sorting, selections and exports operate over the collected snapshot.
Fetching is still work
Lazy display does not make an unlimited Oracle query free. Oracle report execution, transfer, disk/memory bounds and network time still matter. A very wide SELECT * can be much larger than the same number of narrow rows.
If a result is too large
Select fewer columns, use a restrictive WHERE clause, lower Fetch Rows or use desktop background export. Read the actual size/cell-limit error rather than assuming that partial rows are a complete result.
Temporary means temporary
Snapshots are session-scoped and can expire or disappear after logout, cleanup or restart. If a snapshot is unavailable, rerun the query. Download results you need to keep. Lazy loading is not a database cursor that remains open forever.
Desktop background exports
Create a job
- Connect Oracle in desktop.
- Use Background export in the query toolbar.
- Choose CSV or XLSX, maximum rows and the available export options; review any parameters.
- Open Background exports to monitor the local job, cancel if needed or download the completed file.
How it works
The supported connector executes one BI Publisher report and downloads output in chunks. You do not need unique ordering columns or an ordering-confirmation checkbox. The current job maximum is 100,000 rows, subject to report/output limits; a completed job at its maximum may indicate more source rows exist.
Where files live
Jobs and temporary downloads are on the laptop, not the account server. Completed temporary files expire 24 hours after completion; the expiry is shown in the job. Download/save a copy to keep it longer. A file you saved to your own folder is separate from the expiring temporary job.
Keep desktop running
The job is local, not a durable server scheduler. Closing the app, logging out, disconnecting Oracle, sleep/network loss or expired licensing can interrupt it. Do not expect it to finish with the computer off.
Problems
If only 200 rows arrive, check the actual export maximum and current QueryRunner cap. If chunk downloads are rejected, verify service and report permissions. A large interactive result and a background export are different workflows.
AI permissions and personal keys
Three access modes
Who decides
Client admins grant modes only to users in their own organization. Super admin controls the shared service configuration and platform settings. Users cannot change another user’s access or bypass Blocked by entering their own key.
Changes take effect
Shared AI requests are authorized by the backend. Desktop permissions are refreshed at startup and successful daily validation; personal-key restrictions can therefore take until that check to arrive. During an account-server outage an existing signed permission can remain until its fixed deadline. A stored personal key does not override a newly validated Blocked mode. Permissions persist across logout/login.
Personal setup
When permitted, open My OpenAI key in Desktop and use the available key/model controls. Keys are secrets and are not shown back in full. Check the status rather than expecting a blank secret field to display an existing value.
Draft, explain and fix SQL
Open the assistant
Select the AI icon when your admin has granted access. Choose Draft to describe a query, Explain to understand SQL, or Fix to request a correction. Review which editor SQL and instructions you are submitting.
Data boundary
Query result rows are not included in AI requests. SQL can itself contain names, literals or sensitive conditions; remove anything you do not want to send. Desktop AI is a network service even though Oracle execution is local.
Review before running
AI output is a proposal, not verified Oracle SQL. Check table and column names, joins, filters and Oracle-version syntax. Apply only when satisfied, then execute explicitly. The app does not automatically run proposed SQL.
Errors
AI availability depends on permission, configured key/model, provider availability and limits. A provider error is not an Oracle error. A successful AI response is not proof of correct business results.
Refine, review, apply or discard AI changes
Propose and refine
Describe the change you want. Review the proposal and comparison with the original SQL. Ask for a refinement to produce an updated proposal; the new version still requires review before Apply.
Apply
Apply changes the editor only. It does not execute SQL, clear the current result grid, remove result filters or alter selected rows. Those results can belong to the previously executed SQL until you run again.
Undo and Redo
After applying a refined proposal, Undo restores the prior SQL. Redo brings the proposal back. Neither action executes the query or clears existing results.
Discard
Cancel, close, Escape or backdrop dismissal without applying leaves editor SQL, results, filters and selections unchanged. Do not interpret closing a proposal as accepting it.
Plans, seats and subscription dates
Open Subscription
Both trial and paid users can access the web subscription screen. It shows status, seat use, trial end where relevant and the current paid-period date. Only the organization admin can start checkout or manage billing. A one-seat organization’s account holder can be its admin; the admin uses that one seat.
Current public plans
Monthly is CAD 19.99 and annual is CAD 199 for one named user, plus applicable taxes where configured. The current website and Stripe confirmation are authoritative. Custom team prices are arranged privately and do not appear as public plans.
Active subscriptions
New-checkout buttons are disabled when an active subscription already exists. Use Manage billing / invoices to update the existing plan, payment method or cancellation. In desktop, a client admin can use Manage billing / invoices on web; administration stays on the website.
Dates and reminders
An automatically renewing plan shows its paid-period end/next renewal, not a claim that the account will expire then. Scheduled cancellation shows Subscription expires. Desktop reminders start three days before monthly expiry/renewal and fifteen days before annual expiry/renewal.
Test mode
Stripe test mode is not a live payment. Returning from Checkout alone does not confirm access; the server uses signed payment events and subscription state.
Upgrade, downgrade or switch monthly and annual
Open the existing subscription
Use Manage billing / invoices instead of starting a second subscription. Select the offered plan or interval and review Stripe’s confirmation.
Upgrades
Upgrades are prorated and billed immediately. Review unused prepaid-time credit, new charges, tax and the amount due. If the upgrade payment fails, the existing plan and seat limit remain in place; accounts and saved queries are retained.
Downgrades
Downgrades take effect at renewal. The current plan remains available until then. Switching to a shorter billing interval is scheduled for renewal. Review the effective date and any scheduled change shown in SQL Hop.
Monthly/yearly switches
Read the preview before confirming: unused credit, tax and payable amount depend on the interval, effective time and existing invoice state. Open View details in the confirmation for the breakdown. A credit balance offsets future invoices; it is not automatically a cash refund.
Seats and grandfathering
Reduce excess members or pending invitations before a lower seat limit takes effect. End-dated plans can remain with existing subscribers, but switching away may make that retired price unavailable.
Cancel or renew a subscription
Cancel
Open Subscription on the web and select Manage billing / invoices. Use the cancellation option offered in Stripe, review the effective date and confirm there. Return to SQL Hop and refresh billing status.
At period end
When cancellation is scheduled, the paid-period end is shown as the subscription expiry date. Paid query access ends when entitlement is no longer active. Accounts and saved queries are retained; cancelling does not delete the organization or grant another trial.
Change your mind
Use Manage billing to review whether a scheduled cancellation can be reversed or a subscription renewed. Payment confirmation and signed subscription state must restore entitlement; navigating back from a page alone is not enough.
Refunds
Cancellation is not a promise of an automatic cash refund. Review the confirmation and published terms. Credits from plan changes normally reduce future invoices. Contact support for a billing issue without sending card details.
Failed payments, expiry and billing holds
Failed payment or expired subscription
Querying may be denied for past-due, unpaid, incomplete, paused, cancelled or expired entitlement. The account and saved queries remain. Desktop denies new queries and exports when validation explicitly returns the restriction or the existing authorization expires; cached results are retained. Organization admins can still use web billing to review payment and renewal.
Upgrade failure
A failed immediate upgrade should not replace the existing paid plan or seat limit. Review the portal’s payment state before retrying, and avoid creating a second subscription.
Notifications
Payment-failure emails go to the organization admin using the SQL Hop account-email format, with a Manage billing action and duplicate protection. Email delivery is not a substitute for checking Subscription.
Disputes
A chargeback can apply a billing hold and blacklist policy. Domain-wide actions exclude public email providers and require super-admin approval. Winning a dispute does not automatically remove a permanent email blacklist; contact the platform owner for review.
Safety
Never send passwords, full card numbers, reset links or API keys to support. Include a sanitized error, approximate time and subscription status.
Seat limits and member counts
What counts
Seat limits include organization admins and pending invitations, not only users who have executed SQL. A single-user plan can therefore contain one admin account without being a separate free administrator seat.
Add or reactivate users
Check the current used/allowed count before inviting or enabling accounts. Creation, invitations and reactivation must not bypass the seat limit. Trial organizations include ten users; paid/custom plans use their configured seat count.
Downgrade
If you schedule a smaller plan, reduce active members and cancel unneeded invitations before the new limit takes effect. Exceeding the entitlement can pause querying; it does not delete accounts or saved SQL.
Independent organizations
A separate team can subscribe under the same business domain or Oracle instance. Users still require their own authorized account and trial eligibility. Seat sharing is not permission to share one login among several people.
Who can manage what
Regular user
Uses the permitted workspace and configured instances, personal account security and permitted AI. Trial and paid querying use SQL Hop Desktop; web querying is reserved for future enablement. Organization billing information remains accessible, but a regular user cannot start or change billing.
Client admin
Manages members, invitations, their organization’s instance configurations and assigned AI access. Can manage the organization subscription. A client admin cannot manage another organization or open platform-only Revenue & Stripe, shared AI configuration or email-domain protection.
Super admin
The platform owner manages organization approval, trial exceptions, platform settings, shared metadata, billing plans, revenue reports, disputes, maintenance, backups and domain controls. Super-admin web/desktop query exceptions are not representative of ordinary customer access.
Desktop
Administration is excluded. A client admin’s billing identity is preserved separately so they can open web billing without enabling the desktop admin console.
Invite, confirm, approve and manage members
Create an invitation
Open Members & access. Enter the person’s full name and email, confirm the recipient address and send the invitation. The name is used in account emails rather than greeting users by their email address.
Activation then approval
The invitee opens the activation link and sets their app password, proving inbox access. An organization admin then approves the activated account before it can use the workspace. Email confirmation is not automatic workspace approval.
Resend or cancel
Use the row actions to resend an invitation or cancel it. A cancelled or superseded activation link should no longer be used. Pending invitations consume seats, so cancel unneeded ones before adding others.
Edit and disable
Edit a member’s name or email using the offered row control. Changing the login email invalidates sessions and links and can require fresh confirmation. Disable an account to remove access without deleting saved queries. Only manage members within your own organization.
Reset a member’s authenticator or security keys
Before resetting
Verify the member’s identity through your established process. An email claiming a lost key is not itself proof of ownership. Never ask them to send you a password or recovery code.
Use member security controls
Open Members & access, choose the member’s security action and review the factor-removal confirmation. Remove the authenticator configuration or registered security keys as needed. The user must enroll new factors afterward.
Effects
Removing the final factor can disable two-step sign-in and invalidate recovery codes. Factor changes can invalidate other app sessions. This does not reset Oracle authentication or delete the account’s SQL.
Scope
Client admins can act only on authorized members in their organization. Super-admin and other protected admin changes require the appropriate platform-owner flow. If no removal control appears, confirm your role and which member you selected.
Configure shared AI and user permissions
Shared OpenAI configuration
Super admin opens AI settings, configures the secret API key and chooses an available model. The model list can be refreshed from the provider; unavailable or retired models must not be assumed to remain valid. Use configured/status checks rather than expecting the secret to be displayed.
Client-admin assignment
Client admins use Members & access to set Shared AI, Personal key or Blocked for their own users. The backend enforces shared-service requests. Desktop receives permission changes at startup or successful daily validation; an offline device can retain existing signed permissions only until its fixed deadline. Newly validated Blocked access cannot be bypassed with an old personal key.
Secrets and payloads
Keys stay protected server-side or in the applicable local encrypted store. Result rows are excluded from AI requests. SQL and user instructions can contain sensitive information and are intentionally sent when assistance is requested.
Review policy
AI proposals require review and Apply before replacing editor SQL. They are never executed automatically. Do not grant additional permissions merely to hide a provider or billing error.
Organization approval and trial exceptions
Review organizations
Open Organization approvals and inspect the applicant and organization details. Approve or reject using the screen’s controls. Activation can be completed while pending, but workspace access is still blocked.
Trial start
Approval starts the eligible 30-day organization trial, with ten seats. Approval and email activation are distinct events. Do not backdate or restart a trial merely because an applicant resets a password.
Exceptions
Prior trial use is tracked across all participating users, including users who later become admins. Only super admin can grant an explicit exception. Same-domain and same-Oracle-instance teams can subscribe independently; do not block them solely for sharing infrastructure.
Domain protection
Email-domain controls belong to super admin. Temporary overrides, such as approved test inboxes, must remain deliberate exceptions rather than opening domain protection to client admins.
Email-domain protection
Purpose
Domain protection checks account email domains against the configured downloaded list and platform rules. It is separate from Oracle authentication and separate from a team’s right to use an already shared Oracle instance.
Manage centrally
Only super admin can update protection settings or grant exceptions. Client admins cannot change the global policy. Review list updates and matching behavior on the screen before using a broad exception.
Independent teams
A shared company domain is not a reason by itself to block separate organizations or paid teams. Repeat-trial rules follow user identities. Chargeback domain escalation is a different workflow, excludes public email providers and requires approval for domain-wide actions.
Test inboxes
If a public-domain account is approved for a deliberate test, record the exception and scope. Do not assume that all accounts from that public provider are now allowed.
Upload object and column metadata
Use the expected Oracle object/table fields, including OWNER, OBJECT_NAME and OBJECT_TYPE for object lists. Column extracts need identifiers including OWNER, TABLE_NAME and COLUMN_NAME, plus the size/type/comment fields recognized by the upload screen. Follow its exact current header list; do not guess unsupported comment-field names.
Upload table/object data and column data separately. The importer identifies sheets by recognized column headers rather than relying on a sheet name. Put the recognized headers in the actual header row expected by the screen. A file containing columns should not require an unrelated object sheet.
Split large column extracts by table-name initial or another non-overlapping range. Upload each batch in merge mode; previous batches are retained. Table/column identity uniqueness prevents duplicate entries. Restrict extracts to the intended object set to avoid unnecessary volume.
Inspect staged row counts and sample types, sizes and comments. Publish metadata when the assembled catalog is ready for users. Publication is the step that makes staged data available; an upload alone is not proof that autocomplete has changed. Desktop users download the new package.
Check the original workbook for empty comments before blaming import. Wrong or unrecognized headers, missing owners and source NULLs can explain absent details. Never upload client result data as schema metadata.
Custom plan maker and retired plans
Create plans
Use Plans & seats to define the plan, CAD or supported currency, monthly/yearly amounts and user capacity. Custom pricing is organization-specific and not shown on public plan cards. Public plan publication drives the website’s displayed offers.
Publish and test
Review the Stripe mode, price interval, exclusive-tax treatment and seat count before publishing. Test Checkout and signed events in sandbox. A plan label does not by itself grant seats; the active mapped subscription controls entitlement.
End-date plans
End-date a plan to close it to new customers while existing subscribers can remain on their current price as grandfathered. New customers receive available new plans. Switching away can make the old price unavailable.
Changes and limits
Immediate upgrades require successful prorated payment; downgrades take effect at renewal. Seat checks include admins and pending invitations. Never solve a failed payment by deleting an account or saved SQL.
Revenue, taxes and date-range reporting
Open Revenue & Stripe
Choose the date range and refresh the reporting screen. Review the displayed mode so sandbox totals are not mistaken for live revenue.
Gross customer payments, taxes, Stripe processing fees, refunds/credits, net balance transactions and payouts describe different amounts. Tax collected is not the same as revenue retained. A payout can include transactions from different invoice dates.
Tax
Prices use plus-applicable-tax treatment where configured. Stripe Tax needs the business address and valid registrations for the intended mode/jurisdictions. Invoice tax IDs and tax registration settings are separate. Do not assume live tax collection is enabled because sandbox tests passed.
Data and reconciliation
Invoice and credit-note access is required for actual tax/credit reporting. Reporting uses read-only credentials where configured. Compare date definitions and currencies when reconciling reports; fees are provider charges, not the subscription price itself.
Monthly collections
The report opens on the current calendar month. Use This month, Last month, or choose any Month (UTC) and select Show month. Custom From/To dates and the 7/30/90-day ranges are also available. Total money received is actual charges/payments including tax, not subscription list prices or forecast revenue. Net collections subtract fees and refunds and include dispute adjustments. Invoice tax and credit notes use their separately described basis. Each currency is reported separately. Export report CSV keeps the selected date range. Sandbox figures represent test transactions, not real income.
Chargebacks, blacklists and billing holds
On a chargeback
The configured dispute handler can place a billing hold and permanently blacklist the associated email, with super-admin override. Accounts and saved queries remain intact. Notifications and audit records explain the restriction.
Event handling
Duplicate and out-of-order events must not repeat destructive actions or blindly undo newer state. Won/lost outcomes update dispute handling; winning does not automatically remove the permanent email blacklist.
Domain escalation
A second qualifying chargeback from the same business domain can trigger a domain-level review. Public providers such as Gmail and Outlook are excluded. Domain-wide cancellation and unused-time prorated refund actions require super-admin approval before execution.
Review before approval
Inspect affected organizations, subscriptions and proposed amounts. Confirm the Stripe mode and current state. A client admin cannot approve a platform-wide refund or blacklist override. Never make domain-wide decisions from a forwarded email alone.
Read audit history and old/new values
Access
Audit log is restricted to administrators within their permitted organization scope. It records actor, action, target, time and descriptive change details rather than expecting users to interpret raw IDs.
What changed
For supported account and instance edits, review old/new values such as display name, login email, instance name, URL or report path. Security secrets and parameter values are not an audit-value display feature.
Account lifecycle
Activation, completed password reset, invitation changes and administrative actions can produce separate events. A pending organization may reset passwords without becoming approved.
Retention
Audit records older than 90 days are automatically removed by the retention process. Audit history is not permanent recovery storage. Query history is a separate feature with its own retention rule.
Query history and retention
History contents
Query history records executed SQL and execution outcome. Open a history item to review or run it again; parameterized SQL should retain placeholders and ask for fresh values.
Automatic retention
Automatic query history keeps the last month of activity, or at least the latest ten queries when older. Cleanup is scheduled over the weekend rather than every hour. Desktop history is local to its account workspace.
Different from saved queries
Save queries you want to keep by name. History is not a permanent backup. Clearing your history is an explicit action and does not mean Oracle data was deleted.
Cancelled parameter entry
Cancel, Escape or clicking outside the parameter dialog does not execute SQL or create an execution-history entry. Failed parameterized queries retain sanitized history errors without saving parameter values.
Maintenance notices and service status
Notices
A planned maintenance message can show the start, expected end, timezone and operator’s instructions. During active maintenance, the public login animation can be replaced with the maintenance view.
Access restrictions
When maintenance is enforced, non-super-admin web users are signed out and normal access is restricted. The operator retains the privileged access needed to perform maintenance. A scheduled start is evaluated by the backend, not only a page’s visual timer.
Existing work
Save work before the announced window. Saved SQL and accounts should remain intact. Super-admin web Oracle connections and temporary server snapshots can be lost on a backend restart. Local desktop results and Oracle connections are not hosted on that server. Keep Desktop running and save important exports.
Desktop authorization during downtime
An already-authorized registered computer can continue local work within its signed deadline when the account server is unavailable. The limit is 48 hours since the last successful validation, capped by trial/subscription expiry. First activation and web account/billing need the server; Oracle and AI still need their own services. Explicit server denials do not receive an outage extension.
Outages
Use Service status from sign-in or the website footer. A status page served by the same application may itself be unavailable during a full server outage; it is not an independent monitoring guarantee.
Schedule, start and end maintenance
Plan a window
Open Maintenance and enter the title, user-facing message, start, expected end and timezone. Review the schedule before enabling it. A clear message should explain what users need to save and when to retry.
Enforcement
At the active stage, non-super-admin web sessions are logged out and access is restricted. Super admin remains able to work. Query dispatch rechecks maintenance after queue waiting, so queued work does not bypass the window.
End maintenance
Use End to clear the active restriction and publish the updated status. Clients poll for status changes; verify a normal user can reach the intended page afterward. Ending maintenance is distinct from restarting a stopped server.
Operational work
Back up first, use the deployment process and avoid replacing the live database or private settings. After an upgrade, verify application health, sign-in, billing events and Oracle reconnect behavior.
Backups, S3 retention and recovery
Backups & recovery
Use Create local recovery set or Back up to S3 from the web admin screen. The configured process can package application recovery files and a database backup excluding bulky Oracle table/column metadata contents. Review each job’s status and included/excluded items.
Daily scheduling
The configured daily backup runs only where the application/server schedule is actually installed and running. A prepared development schedule is not proof that a future VPS is configured. Confirm server timezone and last successful upload.
Retention
The private S3 recovery/ prefix has a 30-day lifecycle policy when enabled. AWS processes expiration asynchronously; noncurrent versions follow the configured additional cleanup. Saved downloads outside this prefix or local copies have separate retention.
Encryption keys
S3 storage encryption does not stop an authorized downloader from opening a ZIP. Application fields inside a database backup can still be encrypted with application keys. Those keys and private settings are excluded and need a separate secure recovery copy; losing them can make restored data unreadable.
Recovery testing
Keep backups private, test restore to a separate environment, verify accounts and saved SQL, and do not overwrite a working production database as a test. Desktop-local query files and exports are not covered by the server backup.
Downloads and signing key
R2 installers and metadata are separate from S3 recovery sets. Database recovery alone does not recreate those files. Preserve the desktop signing key in its persistent server volume and make a separate protected copy alongside other secrets. Replacing the key requires a fresh online sign-in on registered desktops; existing signed files cannot be verified with a different key.
Deploy updates without replacing data
Before deployment
Confirm the target server, SSH access, runtime, database, HTTPS and private environment settings. A production VPS/domain deployment is a separate step from local development and packaging.
Safe update process
Use the repository’s prepared deployment and recovery instructions. Keep database data, private credentials, application encryption keys, uploads and runtime files outside replaceable application releases. Back up and review migrations before applying an update.
Web and desktop synchronization
Run the complete build process for a finished change batch. It must build web assets, desktop assets and the packaged desktop application and verify their consistency. Updating shared sources alone does not refresh a running desktop app.
After deployment
Check health endpoints, public pages, login, billing/webhook processing and authorized Oracle connections. Use maintenance for planned downtime and retain a rollback path. Do not assume a rollback can undo a destructive schema change without a backup.
Persistent device authorization and downloads
Preserve the device_license volume/signing key when replacing app containers. Use the optional R2 downloads configuration and restricted credential mount for installers/metadata; keep backup credentials separate. Migrate and verify current published objects before enabling R2. Keep WEB_QUERY_ENABLED disabled for the current customer desktop-only policy. Local backend restarts are not desktop binary updates.
Account email delivery and templates
Transactional email
Account invitations/activation, password resets and payment-failure notifications use the configured HTML account-email format with a plain-text alternative. Full names support a personal greeting. These are operational messages, not marketing-list subscriptions.
Delivery configuration
The platform owner configures the email provider and sender identity. SES sandbox mode can require recipient verification; production access is separate from domain verification. Do not assume every recipient is enabled just because one inbox received a test.
Invitation lifecycle
Resend/cancel and post-activation admin approval are distinct from sending mail. An email accepted by the provider does not prove delivery, activation or workspace approval. Check the account status and audit event.
Secrets
Email links are sensitive, expire and can be single-use. Keep SMTP/API credentials server-only. Do not include passwords, reset tokens, parameter values or card details in a support response or audit description.
Contact enquiries and confirmation
Send an enquiry
Use Contact for sales, custom team pricing or support. Enter an inbox you control and the message details. The site sends one confirmation email; the enquiry is not forwarded to the owner until you follow the link and confirm sending.
Repeated submissions
Submitting repeatedly without confirmation should not send repeated confirmation emails. The site tells you to confirm the existing request. Check the original inbox and Spam rather than resubmitting.
After confirmation
Only the confirmed enquiry is forwarded for response. Opening a link is not always the final step; use Confirm and send on the confirmation page. Enquiry messages do not use the account-email team signature.
Privacy and owner review
The platform owner can review messages, timestamps, source IP and confirmation/delivery status in Website inquiries. IP records help investigate abuse but are not proof of one person’s identity. The owner responds to delivered email rather than treating every unconfirmed submission as a conversation.
Cloudflare Turnstile verifies the visitor before the server records an inquiry or sends a confirmation email. Failed, expired, reused or missing tokens are rejected. The server also verifies the hostname and action for live challenges. A provider outage prevents submission rather than skipping verification. The rate limits, hidden spam field and one-confirmation-email rule remain in effect. Local development uses clearly labelled official test keys; production requires a real widget and server-only secret. CAPTCHA does not replace email confirmation or guarantee that a message is legitimate.
What is stored, sent or kept local
App account
Our database holds account, organization, saved web SQL, billing state and permitted audit data. Account emails and names use application encryption and lookup protection; passwords are hashed rather than recoverable plaintext. Encryption does not make a compromised running application harmless.
Oracle
For super-admin web execution, Oracle credentials are temporary server-memory values, not persistent database records. Customer web accounts have no query workspace. Desktop Oracle requests and results are local; optional saved credentials use OS-protected encryption. Your authorized query still sends SQL to Oracle.
Parameters and exports
Parameter values are not stored with saved SQL, history or the optional SQL export sheet. Returned result rows can contain sensitive values, and an exported file is an intentional copy. Review exports before sharing them.
AI
Only requested SQL and instructions are sent for AI assistance, never query result rows. SQL literals may themselves contain sensitive information.
Recovery
Server backups exclude keys and desktop-local work. Protect separately stored application keys, local workspace data and downloaded exports. Avoid sharing tokens, raw logs or credentials during troubleshooting.
Device authorization and downloads
The server stores the registered device ID, computer name, public key and registration/validation times. The private key and signed authorization stay in OS-protected storage on the computer. The signing envelope includes account identity, permissions and instance configuration, not Oracle passwords, SQL or results. Installer and metadata files are delivered from private R2 storage using short-lived links; recovery backups use separate private S3 storage.
Privacy, data handling and support safety
Read Data handling and Usage information from the website footer for current published information. These help articles explain product behavior; they do not replace the published terms or a privacy agreement.
Safe support details
Include the platform (web/desktop), app version if available, approximate time, action taken and exact sanitized error. A harmless reproduction query is preferable to business data. Screenshots should exclude passwords, tokens, private SQL literals and result rows you are not permitted to share.
Never share
Do not send Oracle/app passwords, API keys, MFA codes, recovery codes, reset/activation links or full card information. An administrator does not need your password to investigate an access policy.
Scope
Independent Oracle permissions, email-provider delivery and network/device policies can affect behavior outside SQL Hop. Ask the relevant administrator rather than weakening account protections.
Troubleshoot Oracle query and connection errors
Start with the details
Query execution failed identifies the execution outcome, followed by sanitized Oracle/service details where available. The editor SQL is retained. Do not assume a generic service error means a wrong password.
Common cases
Connection failures
Use the right configured HTTPS host and report path. A successful Oracle browser login does not authenticate the BI Publisher connector. Do not repeatedly retry rejected credentials and risk account lockout.
Escalate safely
Share the error code, time, platform and a harmless reproduction. Never include parameter values or credentials in logs or support messages.
Troubleshoot account and billing access
Identify the restriction
- Pending approval: activation is complete but organization/member approval is not.
- Trial ended or already used: subscribe, or ask super admin to review an exception.
- Trial or paid account on web: the SQL workspace is hidden. Download Desktop; account, billing and permitted organization settings remain available.
- Trial account on desktop: check approval, trial eligibility and the registered computer.
- Seat limit: admin must reduce users/invitations or change the plan.
- Payment/dispute hold: review web billing with the organization admin.
- Signed in elsewhere: a newer sign-in on the same client type may have replaced that session. Web and desktop sessions are separate.
One-seat admin
The sole account holder can be the client admin and consumes one seat. Desktop preserves that billing role while hiding administration. Use Manage billing / invoices on web. Active subscriptions disable new Checkout because changes belong in the existing subscription’s portal.
Saved password but sign-in fails
Check the exact URL and port, account-server origin, account status and any MFA step. A saved password does not rule out an expired session, replaced sign-in or wrong server. Do not reset a password solely because a page is unreachable.
Device and outage errors
Another computer registered means the seat needs an identity-verified transfer in web Account security. Authorization expired means reconnect to SQL Hop and validate; reinstalling or reopening does not extend time. A backwards-clock warning needs the clock corrected before validation. An explicit account denial is not an outage grace extension. Saved SQL and existing results are not deleted by these restrictions.
Check service availability
Status page
Use Service status on the sign-in screen or website footer. It shows the application’s current maintenance state and planned-window message when available.
If the page cannot load
Check the address, port, network and certificate first. A status page served from the same backend can fail during an outage, so an unreachable page is not proof that everything is operational.
What it does not prove
Application availability does not verify every Oracle client instance, OpenAI response or email delivery. Oracle connection/query errors require their own checks.
Maintenance recovery
After a backend restart, sign-in may still exist but temporary Oracle credentials or snapshots may be gone. Reconnect and rerun harmless SQL before resuming work.
Get help with the right information
First check
Search this help center for the action or exact error code. Use the platform and role labels to avoid following a super-admin workflow as a regular user. Check Service status for maintenance.
Send a support message
When signed in, open Support in the sidebar, type your question, and select Send message. Return to Support to read replies; your conversation is saved. Support is available on web and desktop. Only your own conversation is visible. Replies are reviewed and sent by the platform owner; they are not automatic. For organization-specific access, first ask your organization administrator.
Use the website Contact form for pre-signup questions or custom team plans. Confirm your email before expecting forwarding to the owner.
Include
- Web or desktop and operating system.
- The page or toolbar action and approximate timestamp/timezone.
- The exact error with secrets and private data removed.
- Whether a harmless SELECT 1 FROM dual succeeds.
- For billing, test/live mode and visible status, without payment details.
Leave out
Passwords, API keys, MFA/recovery codes, reset links, client result files and private query literals. Do not bypass a certificate warning or disable security to make a support reproduction work.
Complete Cloudflare Turnstile before submitting an inquiry. If it fails to load, use Retry verification and allow challenges.cloudflare.com in your browser. Expired verification is refreshed; no confirmation email is sent when server verification fails. The separate email-confirmation step is still required before an inquiry reaches the platform owner.
Conversation status
Your support conversation can be Open, Waiting for user, or Resolved. Replies from support move it to Waiting for user. Resolved messages stay saved. Sending another message automatically reopens the conversation so support can help again.
Keyboard shortcuts reference
Focus matters
Shortcuts apply to the editor, search field, query tab or divider with focus. Desktop uses OS-native conventions. A search-panel Replace shortcut must not execute SQL. Open the question-mark help or F1 in the workspace for the same reference.
Query workspace
SQL editor
Navigation and results
Dialogs and help
Publish desktop downloads
Prepare a release
- Open Desktop releases in the super-admin menu.
- Select the target platform. Enter a version such as 1.2.3 and release notes.
- Choose a .dmg, .pkg or .zip for Mac, or .exe, .msi or .zip for Windows. A Mac .app folder must be packaged as an installer or ZIP first. The maximum file size is 2 GiB.
- Select Upload release and wait for verification to finish. Uploading does not publish it.
- Review the entry and select Publish. It becomes the current download for that platform.
Manage versions
Publishing a replacement retires the previous public link without deleting the stored installer. Edit notes changes the displayed notes. Withdraw removes the public download. Client admins and users cannot manage releases.
Visitor experience
Downloads detects Windows or Mac and shows the matching page. Visitors can switch platforms manually. If Mac processor architecture cannot be detected, both Intel and Apple Silicon options are shown. Version, notes, size and a SHA-256 checksum accompany each published file.
Storage
Published installers are uploaded to a private Cloudflare R2 bucket and checked before the release becomes current. Uploads stage on the server and retain local originals for recovery; customer download bodies come from R2. The website issues a 15-minute signed link after checking that the release is current. Withdrawal blocks new links; an already-issued link can work until expiry. Installer files saved by customers do not expire after 15 minutes. The database backup alone does not include installer files. Metadata downloads use a separate prefix in the downloads bucket; S3 backups use separate storage and credentials.
Download the correct desktop installer
Open Downloads on the website or follow Download SQL Hop Desktop after login. Windows and Mac are detected when possible; switch platforms manually if needed. On Mac, About This Mac shows Chip for Apple Silicon or Processor: Intel for Intel hardware. Automatic OS detection may not identify the processor.
Check the release
Each published platform lists version, release notes, size and SHA-256. A platform without a published release has no download yet. Choose the file matching your system; an installer for a different processor is not an automatic upgrade path.
Download links
Private R2 signed links last 15 minutes. If a link expires, return to Downloads for a fresh one. A file already saved to your computer remains yours to keep; this expiry differs from a temporary background-export file.
Install and sign in
Use an approved trial or paid SQL Hop account for online activation, then connect Oracle separately. Upgrading an application does not automatically synchronize local saved SQL between computers.
Register or replace your desktop computer
One computer per user
First successful online desktop sign-in registers a cryptographic device public key. One account/seat has one registration. Registering another computer is rejected until the current registration is released. SQL Hop does not use a MAC address or disk serial number for this registration.
Transfer to a replacement
- Sign in on the website and open Account security.
- Verify identity using your app password and an existing factor if enabled.
- Find Registered desktop computer and choose Transfer to another computer.
- Confirm Release registration, then sign in online in Desktop on the replacement.
Old computer
The old device is rejected at its next validation. If offline, it may use only its already-signed authorization, at most 48 hours from last success and never beyond the known subscription/trial expiry. Transfer is not a promise of immediate offline revocation.
Protect local work
Local SQL, results and Oracle credentials are not automatically moved. Export SQL files or protect an authorized local backup before replacing a computer. Do not delete the application-data folder as a transfer shortcut.
Daily validation and account-server outages
First activation and normal checks
First activation requires an online sign-in. A registered computer attempts validation at startup and every 24 hours while the app stays open. Repeated local operations do not send a licensing request every few seconds. Shared AI, support, metadata downloads and other online features can make their own requests.
Account server unavailable
A transport failure or temporary server failure permits only the remaining signed authorization. The scheduled retry is 24 hours after a failed check; startup also attempts validation. Access stops no later than 48 hours from the last success, or the known trial/subscription end, whichever is earlier. Reopening, reinstalling or a failed request does not grant extra time. Remember me is needed for automatic resumption of an existing authorized account; explicit logout removes cached authorization.
Explicit denial
A blocked, revoked or expired response stops new queries, new connections and exports. Existing SQL, results, filters and selections remain available. A successful online validation or fresh authorized login is needed to resume; network failure does not clear a previous explicit denial.
Other services
Oracle queries still need network access to Oracle. Organization AI needs the account service and AI provider; personal AI needs its provider and an existing permitted authorization. Offline authorization does not make these services work without a network.
Clock and permissions
Keep the computer clock correct. A backwards jump can block authorization until corrected. Changes to device access, instance configuration and personal-AI permissions can take until the next check to reach a running device. The outage window is bounded authorization, not an uptime guarantee.
Getting-started tour and desktop download reminder
When it appears
Non-super-admin users see the tour after each new web login. It explains desktop downloads, the separate SQL Hop and Oracle sign-ins, and web account/billing management. Reloading the same login does not intentionally restart the tour.
Close or suppress
Close, Escape or Finish ends the current tour without opting out. Select Don’t show this tour again to save suppression to your account across browsers and future logins. If saving fails, the preference is not treated as saved.
Reopen it
Select Getting started tour in the account sidebar. You can read it again or uncheck the suppression preference to restore automatic display. Download links open separately so your signed-in account page stays available.