<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Finn</title>
    <description>The latest articles on DEV Community by Finn (@dory-nemo).</description>
    <link>https://dev.to/dory-nemo</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3941227%2Fc7c8fbf5-7306-4f5b-848d-741f3b1c6037.jpeg</url>
      <title>DEV Community: Finn</title>
      <link>https://dev.to/dory-nemo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dory-nemo"/>
    <language>en</language>
    <item>
      <title>How Dory Lets You Explore Millions of SQL Rows Without Freezing Your Browser</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Fri, 17 Jul 2026 17:44:01 +0000</pubDate>
      <link>https://dev.to/dory-nemo/dory-v0320-explore-millions-of-sql-rows-without-the-slowdown-53nh</link>
      <guid>https://dev.to/dory-nemo/dory-v0320-explore-millions-of-sql-rows-without-the-slowdown-53nh</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffwb3r1ki81re1an32e39.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffwb3r1ki81re1an32e39.png" alt="Dory v0.32.0 routes large SQL result sets through DuckDB into Parquet-backed, smoothly browsable data" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Most SQL clients work well until a query returns more data than their result table was designed to handle.&lt;/p&gt;

&lt;p&gt;A few hundred rows are easy. A few thousand are usually fine. But once a result reaches hundreds of thousands—or millions—of rows, the experience often starts to break down:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The result takes a long time to appear.&lt;/li&gt;
&lt;li&gt;Browser memory usage increases.&lt;/li&gt;
&lt;li&gt;Scrolling becomes sluggish.&lt;/li&gt;
&lt;li&gt;Filtering and sorting stop feeling interactive.&lt;/li&gt;
&lt;li&gt;The client truncates the result before you can analyze or export it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The usual workaround is to add a smaller &lt;code&gt;LIMIT&lt;/code&gt;, export the data, or move it into another tool.&lt;/p&gt;

&lt;p&gt;Dory v0.32.0 takes a different approach.&lt;/p&gt;

&lt;p&gt;You can now run SQL queries without a row limit, keep the complete result, and continue browsing, searching, filtering, sorting, charting, and exporting millions of rows directly inside Dory.&lt;/p&gt;

&lt;h2&gt;
  
  
  Run SQL queries without an automatic LIMIT
&lt;/h2&gt;

&lt;p&gt;Row limits are useful during everyday database exploration. They prevent an accidental query from pulling an unnecessarily large amount of data.&lt;/p&gt;

&lt;p&gt;But sometimes you actually need the complete result.&lt;/p&gt;

&lt;p&gt;You might need to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Export every matching order.&lt;/li&gt;
&lt;li&gt;Investigate anomalies across a large event table.&lt;/li&gt;
&lt;li&gt;Search an entire query result for a specific value.&lt;/li&gt;
&lt;li&gt;Build a chart from the full dataset.&lt;/li&gt;
&lt;li&gt;Save the result for further analysis.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dory now includes a &lt;strong&gt;No limit&lt;/strong&gt; option in the query settings.&lt;/p&gt;

&lt;p&gt;When it is enabled, Dory stops automatically adding a &lt;code&gt;LIMIT&lt;/code&gt; clause and executes the SQL exactly as written.&lt;/p&gt;

&lt;p&gt;You can keep a safe default limit for normal exploration, then switch to &lt;strong&gt;No limit&lt;/strong&gt; only when the task requires complete data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Returning millions of rows is only half the problem
&lt;/h2&gt;

&lt;p&gt;A database may be capable of returning millions of rows, but sending all of them directly into a browser table creates a new bottleneck.&lt;/p&gt;

&lt;p&gt;Traditional result grids often try to hold too much data in browser memory. As the result grows, rendering becomes slower and interactive operations become more expensive.&lt;/p&gt;

&lt;p&gt;Dory v0.32.0 changes how large SQL result sets are stored and explored.&lt;/p&gt;

&lt;p&gt;Instead of loading the entire result into the browser, Dory:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Executes the complete SQL query.&lt;/li&gt;
&lt;li&gt;Streams the result into a Parquet file.&lt;/li&gt;
&lt;li&gt;Uses DuckDB to query the stored result.&lt;/li&gt;
&lt;li&gt;Sends only the rows required for the current view to the interface.&lt;/li&gt;
&lt;li&gt;Prepares nearby data as you navigate through the result.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The browser never needs to hold millions of rows at once.&lt;/p&gt;

&lt;p&gt;From the user's perspective, however, the result still behaves like one complete table.&lt;/p&gt;

&lt;p&gt;You can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Navigate result sets containing millions of rows.&lt;/li&gt;
&lt;li&gt;Search and filter across the complete result.&lt;/li&gt;
&lt;li&gt;Sort by any available column.&lt;/li&gt;
&lt;li&gt;Create charts from the full dataset.&lt;/li&gt;
&lt;li&gt;Export the complete or filtered result as CSV or Parquet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The size of the dataset changes, but the workflow does not.&lt;/p&gt;

&lt;h2&gt;
  
  
  Filter and sort the full result with DuckDB
&lt;/h2&gt;

&lt;p&gt;Virtualized rendering can make scrolling through a large table smoother, but rendering alone does not solve the complete problem.&lt;/p&gt;

&lt;p&gt;Filtering or sorting millions of rows in browser memory would still be slow and resource-intensive.&lt;/p&gt;

&lt;p&gt;Dory therefore runs these operations through DuckDB.&lt;/p&gt;

&lt;p&gt;When you filter, search, or sort a large result, Dory does not first transfer the entire dataset into the browser. DuckDB performs the operation directly against the Parquet-backed result set, and Dory returns only the page of data required by the current view.&lt;/p&gt;

&lt;p&gt;This architecture keeps interactive operations responsive while preserving access to the complete dataset.&lt;/p&gt;

&lt;p&gt;You do not need to install, configure, or manage DuckDB separately. It runs as part of Dory's internal data layer.&lt;/p&gt;

&lt;h2&gt;
  
  
  SQL results no longer disappear when the session ends
&lt;/h2&gt;

&lt;p&gt;In many SQL clients, a query result is temporary.&lt;/p&gt;

&lt;p&gt;Close the tab, refresh the application, or restart your computer, and you may need to run the query again. That becomes especially inconvenient when the original query was expensive or took several minutes to complete.&lt;/p&gt;

&lt;p&gt;Dory now stores complete query results as persistent ResultSets backed by Parquet.&lt;/p&gt;

&lt;p&gt;After a query finishes, you can reopen the result and continue working without querying the source database again.&lt;/p&gt;

&lt;p&gt;That means you can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Run a large query today and continue tomorrow.&lt;/li&gt;
&lt;li&gt;Switch between SQL tabs without losing previous results.&lt;/li&gt;
&lt;li&gt;Reopen historical results after restarting Dory.&lt;/li&gt;
&lt;li&gt;Preserve filter, sort, and table state.&lt;/li&gt;
&lt;li&gt;Create new charts or exports from an existing result.&lt;/li&gt;
&lt;li&gt;Analyze data without repeatedly loading the source database.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A query result is no longer just temporary output. It becomes a reusable data asset inside your workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Dory uses Parquet for SQL result sets
&lt;/h2&gt;

&lt;p&gt;Parquet is a columnar file format designed for analytical workloads.&lt;/p&gt;

&lt;p&gt;It provides several useful properties for large query results:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Efficient compression.&lt;/li&gt;
&lt;li&gt;Fast access to selected columns.&lt;/li&gt;
&lt;li&gt;Strong compatibility with analytical engines.&lt;/li&gt;
&lt;li&gt;Portable storage that can be queried again later.&lt;/li&gt;
&lt;li&gt;Better performance for filtering and aggregation than row-oriented text formats such as CSV.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dory stores the complete result in Parquet, while DuckDB provides the computation layer used to explore it.&lt;/p&gt;

&lt;p&gt;This separation also allows the interface to remain lightweight. The result can contain millions of rows, but Dory only retrieves the small slice needed for the current table view.&lt;/p&gt;

&lt;h2&gt;
  
  
  DuckDB is becoming a core part of Dory
&lt;/h2&gt;

&lt;p&gt;DuckDB was already available as one of the databases Dory could connect to. In v0.32.0, it takes on a broader role inside Dory's architecture.&lt;/p&gt;

&lt;p&gt;It is becoming a shared computation layer for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SQL query results.&lt;/li&gt;
&lt;li&gt;Parquet datasets.&lt;/li&gt;
&lt;li&gt;CSV and other local files.&lt;/li&gt;
&lt;li&gt;Filtering, sorting, and searching.&lt;/li&gt;
&lt;li&gt;Charts and analytical transformations.&lt;/li&gt;
&lt;li&gt;Future agent-driven data workflows.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Today, this architecture makes million-row ResultSets practical.&lt;/p&gt;

&lt;p&gt;Next, it will allow database results and local files to share the same analysis experience. You will be able to open a file, query it with SQL, combine it with other data, and begin exploring without first importing everything into a traditional database.&lt;/p&gt;

&lt;h2&gt;
  
  
  One workflow from SQL query to complete analysis
&lt;/h2&gt;

&lt;p&gt;The full large-result workflow in Dory now looks like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Write and run a SQL query.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;No limit&lt;/strong&gt; when you need the complete result.&lt;/li&gt;
&lt;li&gt;Watch the preview and progress while the query runs.&lt;/li&gt;
&lt;li&gt;Let Dory store the complete result automatically in Parquet.&lt;/li&gt;
&lt;li&gt;Explore millions of rows through the ResultSet interface.&lt;/li&gt;
&lt;li&gt;Search, filter, sort, chart, or export the data.&lt;/li&gt;
&lt;li&gt;Reopen the saved result later without rerunning the query.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There is no separate export-and-import step and no need to move into another application just because the query returned more data than expected.&lt;/p&gt;

&lt;h2&gt;
  
  
  Dory v0.32.0 is available now
&lt;/h2&gt;

&lt;p&gt;Large SQL results should not become unusable simply because they contain more rows.&lt;/p&gt;

&lt;p&gt;Dory v0.32.0 lets you keep complete query results while maintaining a responsive exploration experience. It also establishes DuckDB and Parquet as the foundation for a broader local data analysis layer inside Dory.&lt;/p&gt;

&lt;p&gt;The next time you need more than the first 200 rows, turn off the &lt;code&gt;LIMIT&lt;/code&gt; and explore the complete result.&lt;/p&gt;

&lt;p&gt;Learn more and download Dory at &lt;a href="https://getdory.dev" rel="noopener noreferrer"&gt;getdory.dev&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>database</category>
      <category>sql</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Dory Has Received the SourceForge Rising Star Award</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Wed, 08 Jul 2026 02:57:51 +0000</pubDate>
      <link>https://dev.to/dory-nemo/dory-has-received-the-sourceforge-rising-star-award-287n</link>
      <guid>https://dev.to/dory-nemo/dory-has-received-the-sourceforge-rising-star-award-287n</guid>
      <description>&lt;p&gt;We’re excited to share that Dory has been recognized with the &lt;strong&gt;SourceForge Rising Star Award&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This award is given to select open source projects that have reached significant milestones in downloads and user engagement within the SourceForge community. SourceForge hosts over 500,000 open source projects and reaches nearly 20 million users per month, so this recognition means a lot to us.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Dory?
&lt;/h2&gt;

&lt;p&gt;Dory is an AI-native SQL client for humans and agents.&lt;/p&gt;

&lt;p&gt;It is built for a workflow where AI agents can help write SQL, inspect schemas, and run database tasks, while humans can still review, edit, visualize, and continue the work in a real SQL workspace.&lt;/p&gt;

&lt;p&gt;Instead of leaving database work buried inside a chat transcript, Dory turns it into something inspectable and reusable:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;editable SQL tabs&lt;/li&gt;
&lt;li&gt;persistent result sets&lt;/li&gt;
&lt;li&gt;charts and filters&lt;/li&gt;
&lt;li&gt;saved queries&lt;/li&gt;
&lt;li&gt;workspace context&lt;/li&gt;
&lt;li&gt;MCP support for AI agents&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why this matters
&lt;/h2&gt;

&lt;p&gt;AI is changing how developers and data teams work with databases, but real database work still needs visibility and control.&lt;/p&gt;

&lt;p&gt;Dory is designed to keep humans in the loop while giving agents a structured way to work with data safely and productively.&lt;/p&gt;

&lt;p&gt;Receiving the SourceForge Rising Star Award is a great milestone for the project and a signal that more people are discovering this workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try Dory
&lt;/h2&gt;

&lt;p&gt;You can check out Dory here:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SourceForge: &lt;a href="https://sourceforge.net/projects/dorystudio/" rel="noopener noreferrer"&gt;https://sourceforge.net/projects/dorystudio/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/dorylab/dory" rel="noopener noreferrer"&gt;https://github.com/dorylab/dory&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Website: &lt;a href="https://getdory.dev" rel="noopener noreferrer"&gt;https://getdory.dev&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks to everyone who has tried Dory, shared feedback, opened issues, starred the repo, or helped spread the word.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>database</category>
      <category>sql</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Why does your local database data leave your network for a query?</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Tue, 07 Jul 2026 06:39:17 +0000</pubDate>
      <link>https://dev.to/dory-nemo/why-does-your-local-database-data-leave-your-network-for-a-query-d5f</link>
      <guid>https://dev.to/dory-nemo/why-does-your-local-database-data-leave-your-network-for-a-query-d5f</guid>
      <description>&lt;p&gt;Sending production database credentials or raw data to a cloud-based SQL platform creates an unnecessary security risk. Most modern data tools force you to trade privacy for convenience, pushing sensitive information to opaque backends. &lt;/p&gt;

&lt;p&gt;I built Dory to stop this. It is an AI-native data studio that runs locally, keeping your data inside your environment at all times. You connect via SSH tunnels and execute queries directly on your infrastructure, whether you are using PostgreSQL, ClickHouse, or other database engines. &lt;/p&gt;

&lt;p&gt;Instead of relying on hallucinations or ungrounded models, Dory uses table intelligence and deep schema awareness to provide accurate insights. It acts as a professional SQL workbench that bridges the gap between raw editing and natural language analysis without the bloat of enterprise SaaS. &lt;/p&gt;

&lt;p&gt;You can find the project at &lt;a href="https://getdory.dev" rel="noopener noreferrer"&gt;https://getdory.dev&lt;/a&gt;. It is licensed under Apache 2.0, allowing for self-hosted deployments using Docker or macOS bundles. If you are tired of cloud-only lock-in risks, have you tried moving your analysis workflow closer to the data itself?&lt;/p&gt;

</description>
      <category>database</category>
      <category>privacy</category>
      <category>security</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Dory Now Supports Snowflake</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Fri, 03 Jul 2026 02:20:28 +0000</pubDate>
      <link>https://dev.to/dory-nemo/dory-now-supports-snowflake-38ei</link>
      <guid>https://dev.to/dory-nemo/dory-now-supports-snowflake-38ei</guid>
      <description>&lt;p&gt;Dory now supports Snowflake as a first-class data source, giving teams a faster way to query, explore, and collaborate on Snowflake data from an AI-native SQL workspace.&lt;/p&gt;

&lt;p&gt;With this release, Snowflake users can create and test connections, run SQL in the console, browse databases, schemas, tables, and views, preview table data, and use Dory's workspace model to keep queries, result sets, and context organized in one place.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Snowflake Support Matters
&lt;/h2&gt;

&lt;p&gt;Snowflake is a core analytical database for many modern data teams. It often holds the datasets that matter most for reporting, product analytics, finance, operations, and AI-assisted analysis. But working with those datasets increasingly involves more than writing a query and copying the result somewhere else.&lt;/p&gt;

&lt;p&gt;Teams need a workspace where humans and AI agents can work against the same database context:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Analysts need a focused SQL console for exploring and validating data.&lt;/li&gt;
&lt;li&gt;Engineers need predictable connection behavior across desktop and self-hosted deployments.&lt;/li&gt;
&lt;li&gt;Operators need clear authentication boundaries and safe secret handling.&lt;/li&gt;
&lt;li&gt;AI agents need structured schema access and query execution without turning database work into an opaque chat transcript.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dory's Snowflake support is designed for that workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Is Included
&lt;/h2&gt;

&lt;p&gt;The first Snowflake release supports the core database workflows needed for everyday analysis:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create and test Snowflake connections&lt;/li&gt;
&lt;li&gt;Run SQL from Dory's SQL Console&lt;/li&gt;
&lt;li&gt;Browse Snowflake databases and schemas&lt;/li&gt;
&lt;li&gt;List tables and views&lt;/li&gt;
&lt;li&gt;Inspect table columns&lt;/li&gt;
&lt;li&gt;Preview table data&lt;/li&gt;
&lt;li&gt;Use default warehouse, database, schema, and role session options&lt;/li&gt;
&lt;li&gt;Authenticate with password or key-pair authentication&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Snowflake joins Dory's existing data source system as a native connection type, so it participates in the same workspace, query, result set, and schema browsing flows as other supported databases.&lt;/p&gt;

&lt;h2&gt;
  
  
  Authentication Options
&lt;/h2&gt;

&lt;p&gt;Dory supports two Snowflake authentication methods in this release.&lt;/p&gt;

&lt;h3&gt;
  
  
  Password Authentication
&lt;/h3&gt;

&lt;p&gt;Password authentication is the simplest setup path. Users provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Account identifier&lt;/li&gt;
&lt;li&gt;Warehouse&lt;/li&gt;
&lt;li&gt;Default database&lt;/li&gt;
&lt;li&gt;Default schema&lt;/li&gt;
&lt;li&gt;Username&lt;/li&gt;
&lt;li&gt;Optional default role&lt;/li&gt;
&lt;li&gt;Password&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is useful for quick validation, small self-hosted deployments, and teams that already manage Snowflake users with password-based access.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key-Pair Authentication
&lt;/h3&gt;

&lt;p&gt;Dory also supports Snowflake key-pair authentication using a pasted PEM private key. This is the recommended path for many production-style service users because it avoids storing a normal Snowflake password.&lt;/p&gt;

&lt;p&gt;Users provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Account identifier&lt;/li&gt;
&lt;li&gt;Warehouse&lt;/li&gt;
&lt;li&gt;Default database&lt;/li&gt;
&lt;li&gt;Default schema&lt;/li&gt;
&lt;li&gt;Username&lt;/li&gt;
&lt;li&gt;Optional default role&lt;/li&gt;
&lt;li&gt;PEM private key&lt;/li&gt;
&lt;li&gt;Optional private key passphrase&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dory uses the private key content directly. It does not rely on a local private key file path, which keeps behavior consistent across Dory Desktop and web self-hosted deployments.&lt;/p&gt;

&lt;h2&gt;
  
  
  How It Works in the Workspace
&lt;/h2&gt;

&lt;p&gt;After a Snowflake connection is saved, users can open it in Dory and start working immediately.&lt;/p&gt;

&lt;p&gt;In the SQL Console, users can run normal Snowflake SQL such as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;select&lt;/span&gt; &lt;span class="n"&gt;current_database&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="n"&gt;current_schema&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="k"&gt;current_role&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt; &lt;span class="n"&gt;current_warehouse&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In the Explorer, users can navigate Snowflake's object hierarchy:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Database
  Schema
    Tables
    Views
    Columns
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Table previews use Snowflake-aware identifier quoting and pagination, so users can inspect data without manually writing preview queries.&lt;/p&gt;

&lt;h2&gt;
  
  
  Built for Human and Agent Workflows
&lt;/h2&gt;

&lt;p&gt;Dory is not just a SQL editor. It is an AI-native data workspace where SQL, result sets, schema context, charts, saved queries, and agent work can live together.&lt;/p&gt;

&lt;p&gt;Snowflake support extends that model to one of the most important cloud data platforms. A user can explore Snowflake manually, ask an AI assistant to help write or refine SQL, inspect the exact query that was executed, and continue the analysis inside the same workspace.&lt;/p&gt;

&lt;p&gt;For agent workflows, this matters because database actions become reviewable and editable. Instead of returning only a text answer, Dory preserves the real SQL and result context so humans can audit, rerun, adjust, and build on the work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Deployment Notes
&lt;/h2&gt;

&lt;p&gt;Snowflake support is available in the shared Dory web application runtime, which powers both Dory Desktop and web self-hosted deployments.&lt;/p&gt;

&lt;p&gt;The first release intentionally keeps the supported surface focused:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Supported: password authentication&lt;/li&gt;
&lt;li&gt;Supported: key-pair authentication with PEM private key content&lt;/li&gt;
&lt;li&gt;Supported: warehouse, database, schema, and role session options&lt;/li&gt;
&lt;li&gt;Supported: databases, schemas, tables, views, columns, and table preview&lt;/li&gt;
&lt;li&gt;Not included yet: SSO, OAuth, MFA, native Okta SSO, token cache, workload identity federation, or local private key file paths&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This focused scope keeps the first release predictable and portable across deployment modes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting Started
&lt;/h2&gt;

&lt;p&gt;To connect Dory to Snowflake:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a Snowflake user or service user with access to the target warehouse, database, schema, tables, and views.&lt;/li&gt;
&lt;li&gt;Open Dory and create a new Snowflake connection.&lt;/li&gt;
&lt;li&gt;Enter the Snowflake account identifier, warehouse, database, schema, username, and role.&lt;/li&gt;
&lt;li&gt;Choose password or key-pair authentication.&lt;/li&gt;
&lt;li&gt;Test the connection.&lt;/li&gt;
&lt;li&gt;Save the connection and open it in the SQL Console.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A simple validation query is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="k"&gt;select&lt;/span&gt;
    &lt;span class="n"&gt;current_database&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;database_name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;current_schema&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="k"&gt;schema_name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="k"&gt;current_role&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;role_name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;current_warehouse&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;warehouse_name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If that query succeeds, users can move on to schema browsing, table preview, and normal SQL analysis.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Comes Next
&lt;/h2&gt;

&lt;p&gt;This release establishes the foundation for Snowflake in Dory. Future iterations can expand the integration with deeper governance metadata, richer object coverage, advanced authentication options, and more Snowflake-specific workflow improvements.&lt;/p&gt;

&lt;p&gt;For now, the goal is straightforward: make Snowflake feel like a native part of Dory's SQL and AI workspace.&lt;/p&gt;

&lt;p&gt;Download Dory: &lt;a href="https://getdory.dev" rel="noopener noreferrer"&gt;https://getdory.dev&lt;/a&gt;&lt;/p&gt;

</description>
      <category>snowflake</category>
      <category>dory</category>
      <category>database</category>
      <category>ai</category>
    </item>
    <item>
      <title>Dory Now Supports Cloudflare D1</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Tue, 16 Jun 2026 09:00:56 +0000</pubDate>
      <link>https://dev.to/dory-nemo/dory-now-supports-cloudflare-d1-2bnf</link>
      <guid>https://dev.to/dory-nemo/dory-now-supports-cloudflare-d1-2bnf</guid>
      <description>&lt;p&gt;We just added Cloudflare D1 support to Dory.&lt;/p&gt;

&lt;p&gt;Dory can now connect directly to a Cloudflare D1 database as a first-class data source. You can browse your D1 schema, inspect tables, preview data, and run SQL from the same workspace you use for other databases.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Is Supported
&lt;/h2&gt;

&lt;p&gt;The first version focuses on the core database exploration workflow:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Test connection&lt;/li&gt;
&lt;li&gt;Run SQL in the SQL Console&lt;/li&gt;
&lt;li&gt;Browse databases, tables, and views&lt;/li&gt;
&lt;li&gt;Inspect table columns&lt;/li&gt;
&lt;li&gt;Preview table data&lt;/li&gt;
&lt;li&gt;View table DDL&lt;/li&gt;
&lt;li&gt;Use SQLite-compatible SQL behavior&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cloudflare D1 is treated as a remote SQLite-like database, but it has its own dedicated driver inside Dory. We intentionally did not reuse the local SQLite file runtime because D1 runs through Cloudflare's remote API surface.&lt;/p&gt;

&lt;h2&gt;
  
  
  How It Works
&lt;/h2&gt;

&lt;p&gt;This integration uses Cloudflare's official D1 REST query API:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;POST /accounts/{account_id}/d1/database/{database_id}/query&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Dory sends SQL and positional parameters to the Cloudflare API, then normalizes the response into Dory's standard query result format.&lt;/p&gt;

&lt;p&gt;Connection settings are simple:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cloudflare Account ID&lt;/li&gt;
&lt;li&gt;D1 Database ID&lt;/li&gt;
&lt;li&gt;Cloudflare API Token&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The API token is handled through Dory's existing encrypted identity secret path. It is not stored in connection options or displayed in the UI.&lt;/p&gt;

&lt;h2&gt;
  
  
  SQLite Semantics
&lt;/h2&gt;

&lt;p&gt;D1 is SQLite-compatible, so Dory maps the SQL dialect to SQLite for formatting, editor behavior, metadata queries, and table preview SQL.&lt;/p&gt;

&lt;p&gt;For metadata, Dory uses standard SQLite-style introspection, such as querying &lt;code&gt;sqlite_schema&lt;/code&gt; for tables and views.&lt;/p&gt;

&lt;p&gt;Column details use &lt;code&gt;PRAGMA table_xinfo(...)&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;DDL display reads from &lt;code&gt;sqlite_master&lt;/code&gt; or &lt;code&gt;sqlite_schema&lt;/code&gt;, with a fallback generated from column metadata when needed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;Cloudflare D1 is a good fit for serverless applications, edge workloads, prototypes, and lightweight production systems. But once a database exists, teams still need practical tools to inspect, query, and understand it.&lt;/p&gt;

&lt;p&gt;With this integration, Dory can be used as a lightweight workbench for D1:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Check what tables exist&lt;/li&gt;
&lt;li&gt;Inspect schema quickly&lt;/li&gt;
&lt;li&gt;Run ad hoc SQL&lt;/li&gt;
&lt;li&gt;Preview rows without writing a Worker&lt;/li&gt;
&lt;li&gt;Review DDL from the table browser&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Current Scope
&lt;/h2&gt;

&lt;p&gt;This first version is intentionally focused.&lt;/p&gt;

&lt;p&gt;It does not add D1-specific management features such as import/export, time travel, metrics, permission management, or custom Worker proxy protocols.&lt;/p&gt;

&lt;p&gt;The goal is direct database access and exploration through the official Cloudflare REST API.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Is Next
&lt;/h2&gt;

&lt;p&gt;We will keep improving the D1 experience based on real usage. Possible next steps include better D1-specific metadata, richer schema summaries, and workflow improvements around serverless database debugging.&lt;/p&gt;

&lt;p&gt;For now: &lt;strong&gt;Dory x Cloudflare D1&lt;/strong&gt; is available as a new data source.&lt;/p&gt;

&lt;p&gt;Download Dory: &lt;a href="https://getdory.dev" rel="noopener noreferrer"&gt;https://getdory.dev&lt;/a&gt;&lt;/p&gt;

</description>
      <category>cloudflare</category>
      <category>d1</category>
      <category>sqlite</category>
      <category>database</category>
    </item>
    <item>
      <title>Best Database Clients in 2026: Top SQL GUI Tools Compared</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Thu, 04 Jun 2026 11:10:25 +0000</pubDate>
      <link>https://dev.to/dory-nemo/best-database-clients-in-2026-top-sql-gui-tools-compared-42dm</link>
      <guid>https://dev.to/dory-nemo/best-database-clients-in-2026-top-sql-gui-tools-compared-42dm</guid>
      <description>&lt;p&gt;Choosing a database client used to mean choosing a better SQL editor. In 2026, that is no longer enough.&lt;/p&gt;

&lt;p&gt;Modern teams expect a database client to connect to multiple engines, browse schemas quickly, write dialect-aware SQL, edit result sets, export data, support secure connections, and help people move from raw tables to analysis. AI assistance is also becoming part of the normal SQL workflow, especially when it can use real schema context instead of generating generic examples.&lt;/p&gt;

&lt;p&gt;This guide compares popular database clients and SQL GUI tools for developers, analysts, data teams, and operators. It focuses on practical day-to-day use: connecting to databases, writing SQL, exploring schemas, understanding results, and working safely with production data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick Comparison
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Database client&lt;/th&gt;
&lt;th&gt;Best for&lt;/th&gt;
&lt;th&gt;Platforms&lt;/th&gt;
&lt;th&gt;Open source&lt;/th&gt;
&lt;th&gt;Notable strengths&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://getdory.dev/" rel="noopener noreferrer"&gt;Dory&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;AI-native database work across SQL, schema exploration, results, and charts&lt;/td&gt;
&lt;td&gt;Desktop, Docker, self-hosted&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;SQL Console, Explorer, schema-aware AI Chat, charts, saved queries&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://dbeaver.io/" rel="noopener noreferrer"&gt;DBeaver&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Broad database coverage and power-user administration&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux&lt;/td&gt;
&lt;td&gt;Community edition&lt;/td&gt;
&lt;td&gt;Universal database tool, SQL editor, data editor, import/export&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.jetbrains.com/datagrip/" rel="noopener noreferrer"&gt;DataGrip&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;IDE-style SQL development&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Smart completion, refactoring, inspections, JetBrains workflow&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://tableplus.com/" rel="noopener noreferrer"&gt;TablePlus&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Fast native database management with a polished interface&lt;/td&gt;
&lt;td&gt;macOS, Windows, Linux, iOS&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Native UI, inline editing, safe mode, multiple tabs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.beekeeperstudio.io/" rel="noopener noreferrer"&gt;Beekeeper Studio&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Friendly open-source SQL client with modern UX&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Clean SQL editor, many supported databases, local-first workflow&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.dbvis.com/" rel="noopener noreferrer"&gt;DbVisualizer&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Mature universal database client for teams and enterprises&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;JDBC coverage, object support, SQL editor, Git integration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.dbgate.io/" rel="noopener noreferrer"&gt;DbGate&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;SQL and NoSQL management in desktop or web form&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux, web&lt;/td&gt;
&lt;td&gt;Community edition&lt;/td&gt;
&lt;td&gt;SQL and NoSQL support, query console, data browser, Docker option&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.heidisql.com/" rel="noopener noreferrer"&gt;HeidiSQL&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Lightweight relational database work, especially MySQL and MariaDB&lt;/td&gt;
&lt;td&gt;Windows, Linux, macOS previews&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Fast grid editing, exports, SSH/SSL, straightforward UI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://dev.mysql.com/doc/workbench/en/" rel="noopener noreferrer"&gt;MySQL Workbench&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;MySQL administration, modeling, and migration&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux&lt;/td&gt;
&lt;td&gt;Community edition&lt;/td&gt;
&lt;td&gt;MySQL-first design, modeling, administration, migration tools&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.pgadmin.org/" rel="noopener noreferrer"&gt;pgAdmin&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;PostgreSQL administration&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux, web&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;PostgreSQL object management, query tool, graphical EXPLAIN&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://eggerapps.at/postico2/" rel="noopener noreferrer"&gt;Postico 2&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Native PostgreSQL client for Mac users&lt;/td&gt;
&lt;td&gt;macOS&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Native Mac UX, PostgreSQL-compatible databases, table and query editing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.phpmyadmin.net/" rel="noopener noreferrer"&gt;phpMyAdmin&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Browser-based MySQL and MariaDB administration&lt;/td&gt;
&lt;td&gt;Web&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Web deployment, MySQL/MariaDB administration, import/export&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  What Makes a Good Database Client in 2026?
&lt;/h2&gt;

&lt;p&gt;A strong database client should do more than open a connection string. Before choosing one, evaluate these areas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Database coverage:&lt;/strong&gt; Does it support the databases you actually use: PostgreSQL, MySQL, MariaDB, SQLite, DuckDB, ClickHouse, SQL Server, Oracle, or cloud variants?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SQL editing:&lt;/strong&gt; Does the editor understand schema context, syntax highlighting, autocomplete, query history, formatting, and multiple tabs?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Schema exploration:&lt;/strong&gt; Can you inspect schemas, tables, views, columns, indexes, functions, procedures, and sample rows without guessing object names?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Result workflows:&lt;/strong&gt; Can you filter, sort, export, chart, and save useful queries after running SQL?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Safety:&lt;/strong&gt; Does it support read-only users, SSL, SSH tunnels, connection separation, and safe workflows for production data?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI assistance:&lt;/strong&gt; If AI is included, does it understand your real schema and SQL dialect, or does it only produce generic SQL?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment model:&lt;/strong&gt; Do you need a desktop app, a self-hosted web app, Docker deployment, or a lightweight browser-based tool?&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. Dory
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://getdory.dev/" rel="noopener noreferrer"&gt;Dory&lt;/a&gt; is an AI-native data workspace and database client built for SQL, schema exploration, results, charts, and AI-assisted analysis in one workflow.&lt;/p&gt;

&lt;p&gt;Dory supports ClickHouse, PostgreSQL, Neon, MySQL, MariaDB, SQL Server, Oracle, SQLite, DuckDB, MotherDuck, and cloud database setups. After creating a connection, you can browse databases and schemas in Explorer, write SQL in SQL Console, inspect result tables, create charts, save reusable queries, and ask AI for help with schema context.&lt;/p&gt;

&lt;p&gt;Dory is a strong choice if your workflow is not just “run a query.” It is built for the full loop:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Connect to a database.&lt;/li&gt;
&lt;li&gt;Browse schemas, tables, views, and columns.&lt;/li&gt;
&lt;li&gt;Write or generate SQL.&lt;/li&gt;
&lt;li&gt;Run the query.&lt;/li&gt;
&lt;li&gt;Inspect results.&lt;/li&gt;
&lt;li&gt;Ask AI to explain, fix, optimize, or reshape the SQL.&lt;/li&gt;
&lt;li&gt;Save or visualize the result.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Dory's AI Chat is useful because it can work from database context that already exists in the workspace: selected connection, visible schema, current SQL, recent query errors, and result shape. That makes it better suited for practical SQL iteration than a separate chatbot that cannot see the database structure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose Dory if:&lt;/strong&gt; you want a modern database client where AI, SQL editing, schema browsing, result analysis, charts, and saved queries live together.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you need a deeply specialized DBA console for one database vendor or a legacy enterprise administration workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. DBeaver
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dbeaver.io/" rel="noopener noreferrer"&gt;DBeaver&lt;/a&gt; is one of the best-known universal database clients. Its Community edition is free and open source, and it covers common relational databases such as MySQL, MariaDB, PostgreSQL, SQLite, SQL Server, and many others.&lt;/p&gt;

&lt;p&gt;DBeaver is especially useful for people who work across many database engines and need a broad tool rather than a narrow one. It includes a SQL editor, data editor, schema tools, import/export, ER diagrams, SSH and proxy support, and many administration-oriented features.&lt;/p&gt;

&lt;p&gt;The tradeoff is complexity. DBeaver is powerful, but its interface can feel dense if you only need fast querying and lightweight exploration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose DBeaver if:&lt;/strong&gt; you need wide database coverage, a mature desktop client, and many advanced database-management features.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you prefer a simpler, more focused workspace or an AI-first SQL workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. DataGrip
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.jetbrains.com/datagrip/" rel="noopener noreferrer"&gt;DataGrip&lt;/a&gt; is JetBrains' database IDE. It is a strong fit for developers who already like IntelliJ-based tools and want the same level of code intelligence for SQL.&lt;/p&gt;

&lt;p&gt;DataGrip supports schema introspection, navigation, diagrams, schema diff, smart completion, code inspections, quick fixes, refactoring, query consoles, local history, version control workflows, and AI assistance through JetBrains AI features.&lt;/p&gt;

&lt;p&gt;Its biggest advantage is developer ergonomics. If you spend a lot of time writing complex SQL, maintaining SQL files, reviewing schema changes, or using JetBrains IDEs, DataGrip feels like a natural extension of that environment.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose DataGrip if:&lt;/strong&gt; SQL development is close to software development in your workflow, and you want IDE-grade navigation, completion, refactoring, and code quality tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you want a free open-source option or a lighter client for quick data exploration.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. TablePlus
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://tableplus.com/" rel="noopener noreferrer"&gt;TablePlus&lt;/a&gt; is a polished native database client known for speed, clean design, and direct data editing. It supports relational databases such as MySQL, PostgreSQL, SQLite, and others, with apps across macOS, Windows, Linux, and iOS.&lt;/p&gt;

&lt;p&gt;TablePlus is a good fit for developers who want a fast GUI for common database work: browsing tables, editing rows, running SQL, filtering results, switching connections, and keeping multiple tabs open. It also includes safety-focused features such as safe mode and code review for database changes.&lt;/p&gt;

&lt;p&gt;Its strength is day-to-day productivity, especially for users who value a native app feel over a sprawling enterprise feature set.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose TablePlus if:&lt;/strong&gt; you want a fast, native, attractive database GUI for everyday relational database management.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you need open-source licensing, deep AI assistance, or more extensive cross-engine administration.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Beekeeper Studio
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.beekeeperstudio.io/" rel="noopener noreferrer"&gt;Beekeeper Studio&lt;/a&gt; is a modern SQL editor and database manager with an open-source community edition. It supports many databases, including MySQL, PostgreSQL, SQLite, SQL Server, ClickHouse, DuckDB, MariaDB, Oracle, Redis, Redshift, Trino, and more.&lt;/p&gt;

&lt;p&gt;Beekeeper Studio focuses on a clean and friendly interface. It includes a SQL editor with syntax highlighting and autocomplete, saved queries, folders, tabs, table browsing, inline editing, import/export, SSL and SSH tunneling, and AI features through its AI Shell.&lt;/p&gt;

&lt;p&gt;It is a strong option for developers and analysts who want an approachable open-source database client without the heavier feel of older universal tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose Beekeeper Studio if:&lt;/strong&gt; you want an open-source SQL client with a clean interface and broad database support.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you need deeper enterprise administration, complex schema diff workflows, or a more integrated analysis workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. DbVisualizer
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.dbvis.com/" rel="noopener noreferrer"&gt;DbVisualizer&lt;/a&gt; is a long-running universal database client aimed at professionals who work with many database systems. It supports popular databases such as Oracle, MySQL, SQL Server, PostgreSQL, MongoDB, Redis, Snowflake, Db2, SQLite, Databricks, and more.&lt;/p&gt;

&lt;p&gt;DbVisualizer includes an advanced SQL editor, database browsing, JDBC driver management, result visualization, inline editing, export tools, Git integration, SSH encryption, master password protection, and an integrated AI assistant.&lt;/p&gt;

&lt;p&gt;It is a mature choice for enterprise environments where consistency across database engines matters.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose DbVisualizer if:&lt;/strong&gt; you want a professional universal client with broad database coverage, mature features, and team-friendly workflows.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you prefer open-source tools or a more lightweight personal SQL workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. DbGate
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.dbgate.io/" rel="noopener noreferrer"&gt;DbGate&lt;/a&gt; is a SQL and NoSQL database manager that can run as a desktop app or web application. It supports MySQL, PostgreSQL, Oracle, SQL Server, SQLite, MongoDB, Redis, and more.&lt;/p&gt;

&lt;p&gt;DbGate includes a data browser and editor, query console with autocomplete, AI-powered database chat, import/export, visualization, diagrams, charts, themes, and a Docker-friendly web deployment model. Its Community plan is open source and supports unlimited connections for local use.&lt;/p&gt;

&lt;p&gt;DbGate is useful when you want both desktop and browser access, or when your stack mixes SQL and NoSQL databases.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose DbGate if:&lt;/strong&gt; you want a flexible database manager that can cover SQL and NoSQL from desktop or web.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; your workflow is primarily SQL analysis and you want tighter AI-to-results integration.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. HeidiSQL
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.heidisql.com/" rel="noopener noreferrer"&gt;HeidiSQL&lt;/a&gt; is a free open-source database client with a long history, especially in the MySQL and MariaDB community. It also supports Microsoft SQL Server, PostgreSQL, SQLite, InterBase, and Firebird.&lt;/p&gt;

&lt;p&gt;HeidiSQL is practical and fast. It supports multiple server connections in one window, SSH tunnels, SSL settings, table and view editing, stored routines, triggers, exports, user privileges, data grids, syntax highlighting, code completion, and SQL formatting.&lt;/p&gt;

&lt;p&gt;It is less fashionable than newer tools, but it remains a productive choice for people who want a lightweight relational database client.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose HeidiSQL if:&lt;/strong&gt; you work heavily with MySQL or MariaDB and want a fast, free, practical client.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you need modern AI workflows, polished cross-platform UX, or broader cloud database support.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. MySQL Workbench
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dev.mysql.com/doc/workbench/en/" rel="noopener noreferrer"&gt;MySQL Workbench&lt;/a&gt; is Oracle's official GUI for MySQL. It is available as Community and Commercial editions and includes database development, administration, design, modeling, migration, performance tools, and SQL editing.&lt;/p&gt;

&lt;p&gt;MySQL Workbench is not a general-purpose SQL client in the same way DBeaver, Dory, DataGrip, or TablePlus are. Its value is that it is purpose-built for MySQL. If your world is mostly MySQL, the modeling, administration, migration, and performance features can be valuable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose MySQL Workbench if:&lt;/strong&gt; you need an official MySQL-focused tool for administration, modeling, migration, or performance work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you regularly work across PostgreSQL, ClickHouse, DuckDB, SQL Server, Oracle, and other engines.&lt;/p&gt;

&lt;h2&gt;
  
  
  10. pgAdmin
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.pgadmin.org/" rel="noopener noreferrer"&gt;pgAdmin&lt;/a&gt; is the classic open-source administration and development platform for PostgreSQL. It can run on desktop platforms or as a web application.&lt;/p&gt;

&lt;p&gt;pgAdmin is strongest when the job is specifically PostgreSQL administration. It supports PostgreSQL object management, query execution, autocomplete, graphical EXPLAIN, and a broad set of server and database administration workflows.&lt;/p&gt;

&lt;p&gt;For general data exploration, some users prefer a lighter or more modern SQL client. But for PostgreSQL-specific administration, pgAdmin remains an important option.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose pgAdmin if:&lt;/strong&gt; you need a PostgreSQL-first administration tool.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you want a multi-database workspace with a more streamlined daily query experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  11. Postico 2
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://eggerapps.at/postico2/" rel="noopener noreferrer"&gt;Postico 2&lt;/a&gt; is a native Mac app for PostgreSQL and PostgreSQL-compatible databases such as Amazon Redshift, CockroachDB, and Greenplum.&lt;/p&gt;

&lt;p&gt;Postico 2 focuses on a clean Mac experience for querying, browsing, editing, searching, and working with PostgreSQL data. It includes a multi-file query editor, table content editing, structure editing, function and procedure editing, connection organization, and support for PostgreSQL-compatible databases.&lt;/p&gt;

&lt;p&gt;It is a strong choice for Mac users who mostly work with PostgreSQL and prefer a native interface over a cross-platform Electron or Java app.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose Postico 2 if:&lt;/strong&gt; you are on macOS and want a polished PostgreSQL-focused client.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you need Windows or Linux support, open-source licensing, or broad database coverage.&lt;/p&gt;

&lt;h2&gt;
  
  
  12. phpMyAdmin
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.phpmyadmin.net/" rel="noopener noreferrer"&gt;phpMyAdmin&lt;/a&gt; is a free web-based tool for administering MySQL and MariaDB. It is mature, widely deployed, and familiar to many hosting environments.&lt;/p&gt;

&lt;p&gt;phpMyAdmin supports database, table, column, index, user, privilege, stored procedure, trigger, SQL execution, import/export, schema visualization, query-by-example, and global search workflows.&lt;/p&gt;

&lt;p&gt;It is not trying to be a modern desktop SQL workspace. Its strength is browser-based MySQL and MariaDB administration, especially in web hosting and shared environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Choose phpMyAdmin if:&lt;/strong&gt; you need browser-based MySQL or MariaDB administration, especially on a server or hosting panel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Consider another tool if:&lt;/strong&gt; you want a desktop database client, modern SQL editor, AI assistance, or multi-database analysis workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Best Database Client by Use Case
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use case&lt;/th&gt;
&lt;th&gt;Best picks&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;AI-assisted SQL and data exploration&lt;/td&gt;
&lt;td&gt;Dory, DataGrip, DbVisualizer, Beekeeper Studio&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Open-source SQL client&lt;/td&gt;
&lt;td&gt;Dory, DBeaver, Beekeeper Studio, HeidiSQL, pgAdmin, phpMyAdmin&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Broad multi-database support&lt;/td&gt;
&lt;td&gt;DBeaver, DbVisualizer, DataGrip, DbGate, Dory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fast native GUI&lt;/td&gt;
&lt;td&gt;TablePlus, Postico 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PostgreSQL administration&lt;/td&gt;
&lt;td&gt;pgAdmin, Postico 2, DataGrip, Dory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MySQL and MariaDB administration&lt;/td&gt;
&lt;td&gt;MySQL Workbench, phpMyAdmin, HeidiSQL, Dory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SQL and NoSQL in one tool&lt;/td&gt;
&lt;td&gt;DbGate, DBeaver Pro, DbVisualizer&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Developer IDE workflow&lt;/td&gt;
&lt;td&gt;DataGrip&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Lightweight everyday SQL work&lt;/td&gt;
&lt;td&gt;TablePlus, Beekeeper Studio, HeidiSQL, Dory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Self-hosted or browser-accessible database client&lt;/td&gt;
&lt;td&gt;Dory, DbGate, pgAdmin, phpMyAdmin&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  How to Choose the Right SQL Client
&lt;/h2&gt;

&lt;p&gt;If you mostly write SQL and explore results, pick a client with a strong editor, schema browser, and result workflow. Dory, DataGrip, TablePlus, Beekeeper Studio, and DBeaver are all reasonable starting points.&lt;/p&gt;

&lt;p&gt;If your team works across many database engines, choose a universal database client with broad coverage. DBeaver, DbVisualizer, DbGate, DataGrip, and Dory are better fits than database-specific tools.&lt;/p&gt;

&lt;p&gt;If you want AI help, look closely at context. The useful question is not “does this tool have AI?” but “can the AI see the schema, the current SQL, the error, and the result shape?” That is where tools like Dory are designed to be different from generic chat interfaces.&lt;/p&gt;

&lt;p&gt;If you need vendor-specific administration, use the tool built for that database. pgAdmin is still a natural choice for PostgreSQL administration. MySQL Workbench and phpMyAdmin remain common for MySQL and MariaDB workflows. Postico 2 is excellent for Mac users who live in PostgreSQL.&lt;/p&gt;

&lt;h2&gt;
  
  
  FAQ
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What is the best database client in 2026?
&lt;/h3&gt;

&lt;p&gt;There is no single best database client for every team. Dory is a strong choice for AI-native SQL workflows and database exploration. DBeaver is a strong universal open-source client. DataGrip is best for IDE-style SQL development. TablePlus is best for a fast native GUI. pgAdmin, MySQL Workbench, Postico 2, and phpMyAdmin are best when you are focused on one database family.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is the best open-source database client?
&lt;/h3&gt;

&lt;p&gt;Good open-source options include Dory, DBeaver Community, Beekeeper Studio Community, HeidiSQL, pgAdmin, phpMyAdmin, and DbGate Community. The best choice depends on whether you need broad database coverage, a modern UI, AI assistance, or database-specific administration.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is the best SQL client for PostgreSQL?
&lt;/h3&gt;

&lt;p&gt;For PostgreSQL, consider Dory, DataGrip, DBeaver, TablePlus, Beekeeper Studio, pgAdmin, and Postico 2. Choose pgAdmin for PostgreSQL administration, Postico 2 for a native Mac PostgreSQL experience, DataGrip for IDE-style SQL development, and Dory for AI-assisted exploration and analysis.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is the best SQL client for MySQL?
&lt;/h3&gt;

&lt;p&gt;For MySQL, consider Dory, TablePlus, DBeaver, Beekeeper Studio, HeidiSQL, MySQL Workbench, phpMyAdmin, and DataGrip. Choose MySQL Workbench for official MySQL administration and modeling, phpMyAdmin for web-based administration, HeidiSQL for a lightweight free client, and Dory for a modern SQL and AI workflow.&lt;/p&gt;

&lt;h3&gt;
  
  
  Do database clients need AI features?
&lt;/h3&gt;

&lt;p&gt;Not always. If you only run known queries, AI may be optional. But AI becomes useful when you are exploring unfamiliar schemas, fixing SQL errors, explaining a query, optimizing a draft, or reshaping results for charts. The best AI database clients use real database context instead of isolated prompts.&lt;/p&gt;

&lt;h3&gt;
  
  
  Is Dory a database client or a data workspace?
&lt;/h3&gt;

&lt;p&gt;Dory is both. It works as a database client for connecting to databases, browsing schema, writing SQL, running queries, and inspecting results. It also acts as a data workspace by combining SQL Console, Explorer, AI Chat, charts, and saved queries in one place.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Recommendation
&lt;/h2&gt;

&lt;p&gt;Start from your workflow, not from a feature checklist.&lt;/p&gt;

&lt;p&gt;If you want a modern AI-native database client for SQL, schema exploration, charts, saved queries, and result-aware assistance, try &lt;a href="https://getdory.dev/" rel="noopener noreferrer"&gt;Dory&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you need the widest traditional database tooling, try DBeaver or DbVisualizer. If you want a developer IDE, try DataGrip. If you want a fast native GUI, try TablePlus or Postico 2. If you need database-specific administration, use pgAdmin, MySQL Workbench, phpMyAdmin, or HeidiSQL.&lt;/p&gt;

&lt;p&gt;The best database client is the one that helps you understand the data, write correct SQL, and move safely through the work without switching tools every few minutes.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sql</category>
      <category>database</category>
      <category>dataengineering</category>
    </item>
    <item>
      <title>Introducing Oracle Support in Dory</title>
      <dc:creator>Finn</dc:creator>
      <pubDate>Tue, 26 May 2026 06:34:54 +0000</pubDate>
      <link>https://dev.to/dory-nemo/introducing-oracle-support-in-dory-18bp</link>
      <guid>https://dev.to/dory-nemo/introducing-oracle-support-in-dory-18bp</guid>
      <description>&lt;h1&gt;
  
  
  Introducing Oracle Support in Dory
&lt;/h1&gt;

&lt;p&gt;Dory now supports Oracle Database.&lt;/p&gt;

&lt;p&gt;If your team keeps core business data, finance data, ERP data, order systems, reporting systems, or long-running enterprise applications in Oracle, you can now connect Oracle to Dory and work with it in the same modern data workspace.&lt;/p&gt;

&lt;p&gt;This release is not just about adding another connection type. Oracle now works across Dory's core data workflow: creating connections, resolving Oracle services, browsing schemas, inspecting tables and views, exploring functions and procedures, previewing data, running Oracle SQL, and using AI assistance with Oracle-aware context.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Oracle Support Matters
&lt;/h2&gt;

&lt;p&gt;Oracle is still a critical database for many enterprise systems. It often holds production data that has run reliably for years, and it is frequently tied to finance, supply chain, customer management, internal operations, audit reporting, and other high-value workflows.&lt;/p&gt;

&lt;p&gt;But working with Oracle is not always lightweight. Analysts need to understand service names, schemas, identifier casing, and system catalog views. Engineers need to inspect tables, views, indexes, primary keys, sequences, and stored procedures. When queries fail, Oracle's SQL dialect differences also matter.&lt;/p&gt;

&lt;p&gt;With Oracle support, Dory brings that context into a unified workspace. You do not need to jump between tools just to find the right object, and you do not need to treat Oracle as a generic SQL source and guess the syntax.&lt;/p&gt;

&lt;h2&gt;
  
  
  What You Can Do
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Connect to Oracle
&lt;/h3&gt;

&lt;p&gt;You can create an Oracle connection from Dory's Connections page.&lt;/p&gt;

&lt;p&gt;Dory supports the connection details Oracle users expect:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Host and port, with &lt;code&gt;1521&lt;/code&gt; as the default port&lt;/li&gt;
&lt;li&gt;Oracle service name, such as &lt;code&gt;ORCLPDB1&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Easy Connect-style host input, such as &lt;code&gt;oracle://db.example.com:1521/ORCLPDB1&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Optional Connect String for more complex listener or deployment setups&lt;/li&gt;
&lt;li&gt;Username, password, and Dory's existing connection test and save flow&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After the connection is saved, Oracle appears alongside your other data sources. Dory recognizes it as a dedicated database type instead of treating it like Postgres, MySQL, or SQL Server.&lt;/p&gt;

&lt;h3&gt;
  
  
  Browse Schemas, Tables, Views, Functions, and Sequences
&lt;/h3&gt;

&lt;p&gt;Once connected, Oracle becomes available in Dory Explorer and the SQL Console sidebar.&lt;/p&gt;

&lt;p&gt;You can browse:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Schemas&lt;/li&gt;
&lt;li&gt;Tables&lt;/li&gt;
&lt;li&gt;Views&lt;/li&gt;
&lt;li&gt;Functions&lt;/li&gt;
&lt;li&gt;Procedures&lt;/li&gt;
&lt;li&gt;Sequences&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dory filters common Oracle system schemas so the workspace stays focused on user-maintained business objects. For a database with many object layers and long-lived historical objects, this matters: opening a connection should show the data you can work with, not bury it under system objects.&lt;/p&gt;

&lt;p&gt;The SQL Console sidebar also prefers the schema that matches the current connection identity, helping you get into the right query context faster.&lt;/p&gt;

&lt;h3&gt;
  
  
  Inspect Table Details
&lt;/h3&gt;

&lt;p&gt;For Oracle tables and views, Dory can show useful object-level details:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Columns and data types&lt;/li&gt;
&lt;li&gt;Default expressions&lt;/li&gt;
&lt;li&gt;Column comments&lt;/li&gt;
&lt;li&gt;Primary keys&lt;/li&gt;
&lt;li&gt;Table or view comments&lt;/li&gt;
&lt;li&gt;Table size and row estimates&lt;/li&gt;
&lt;li&gt;Indexes&lt;/li&gt;
&lt;li&gt;Data preview&lt;/li&gt;
&lt;li&gt;Table or view DDL&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This gives you the context you need before writing SQL. You can confirm column types, primary keys, indexes, and table scale before deciding how to query, instead of running a large query just to learn the structure.&lt;/p&gt;

&lt;p&gt;For data previews, Dory uses Oracle's &lt;code&gt;FETCH FIRST n ROWS ONLY&lt;/code&gt; and &lt;code&gt;OFFSET ... FETCH NEXT ...&lt;/code&gt; syntax instead of another database's &lt;code&gt;LIMIT&lt;/code&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Explore Functions and Procedures
&lt;/h3&gt;

&lt;p&gt;Many Oracle databases keep important business logic in functions and stored procedures. Dory now treats these objects as explorable database resources.&lt;/p&gt;

&lt;p&gt;When you open a function or procedure, you can see:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Owning schema&lt;/li&gt;
&lt;li&gt;Object type&lt;/li&gt;
&lt;li&gt;Parameters&lt;/li&gt;
&lt;li&gt;Parameter direction&lt;/li&gt;
&lt;li&gt;Created and modified timestamps&lt;/li&gt;
&lt;li&gt;Sample call SQL&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For procedures, Dory generates a &lt;code&gt;BEGIN ... END;&lt;/code&gt; style sample call. For functions, Dory generates a sample call from &lt;code&gt;dual&lt;/code&gt;. These details make it easier to understand existing database logic and reduce trial and error when calling it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Run Oracle SQL in SQL Console
&lt;/h3&gt;

&lt;p&gt;SQL Console now handles Oracle as its own SQL dialect.&lt;/p&gt;

&lt;p&gt;That means Dory can more naturally handle Oracle syntax, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Using &lt;code&gt;FETCH FIRST n ROWS ONLY&lt;/code&gt; or &lt;code&gt;ROWNUM&lt;/code&gt; to limit rows&lt;/li&gt;
&lt;li&gt;Avoiding &lt;code&gt;LIMIT&lt;/code&gt; on Oracle queries&lt;/li&gt;
&lt;li&gt;Supporting Oracle-style named parameters&lt;/li&gt;
&lt;li&gt;Using &lt;code&gt;dual&lt;/code&gt; when Oracle requires a one-row source&lt;/li&gt;
&lt;li&gt;Preserving Oracle identifier casing and quoting rules&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Oracle and other relational databases all use SQL, but small dialect differences are enough to break a query. Dory now treats Oracle as Oracle instead of pushing it through an oversimplified generic SQL template.&lt;/p&gt;

&lt;h3&gt;
  
  
  Use Oracle-Aware AI Assistance
&lt;/h3&gt;

&lt;p&gt;Dory's AI assistance now understands Oracle query conventions.&lt;/p&gt;

&lt;p&gt;When you ask Dory to generate SQL, fix SQL, or explain a query, it can apply Oracle-specific rules:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use Oracle SQL syntax&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;FETCH FIRST n ROWS ONLY&lt;/code&gt; or &lt;code&gt;ROWNUM&lt;/code&gt; to limit result size&lt;/li&gt;
&lt;li&gt;Prefer &lt;code&gt;ALL_*&lt;/code&gt; and &lt;code&gt;USER_*&lt;/code&gt; catalog views when metadata is needed&lt;/li&gt;
&lt;li&gt;Query &lt;code&gt;dual&lt;/code&gt; only when Oracle requires a one-row source&lt;/li&gt;
&lt;li&gt;Avoid PostgreSQL, SQL Server, and MySQL-specific syntax&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This matters in real workflows. AI should not generate &lt;code&gt;LIMIT&lt;/code&gt; for Oracle users, and it should not use PostgreSQL &lt;code&gt;pg_catalog&lt;/code&gt; or SQL Server &lt;code&gt;sys&lt;/code&gt; catalog views to inspect Oracle metadata.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Better Workspace for Enterprise Databases
&lt;/h2&gt;

&lt;p&gt;Oracle support makes Dory a better fit for real multi-database environments.&lt;/p&gt;

&lt;p&gt;Many teams do not use just one database. Production systems may run on Oracle, analytics services may use Postgres or ClickHouse, internal tools may use MySQL or SQL Server, and local analysis may depend on DuckDB, SQLite, or file-based data.&lt;/p&gt;

&lt;p&gt;For analysts, this means finding Oracle business data and starting analysis faster.&lt;br&gt;&lt;br&gt;
For engineers, this means seeing schemas, tables, views, indexes, functions, and procedures more clearly.&lt;br&gt;&lt;br&gt;
For data and operations teams, this means Oracle can live in the same workspace as every other data source.&lt;/p&gt;

&lt;p&gt;Dory's goal is not to flatten every database into the same experience. It is to respect each database's behavior inside a unified workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Start
&lt;/h2&gt;

&lt;p&gt;You can try it with these steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Dory.&lt;/li&gt;
&lt;li&gt;Go to Connections.&lt;/li&gt;
&lt;li&gt;Create a new Oracle connection.&lt;/li&gt;
&lt;li&gt;Enter the host, port, username, password, and service name.&lt;/li&gt;
&lt;li&gt;Add a Connect String if your environment needs one.&lt;/li&gt;
&lt;li&gt;Test and save the connection.&lt;/li&gt;
&lt;li&gt;Open Explorer or SQL Console and start browsing or querying Oracle data.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From there, you can browse schemas, inspect tables and views, preview data, explore functions and procedures, and ask Dory to help write or fix Oracle SQL.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;Oracle support is an important step toward supporting real enterprise data environments in Dory.&lt;/p&gt;

&lt;p&gt;We will keep improving schema exploration, query assistance, database object understanding, and cross-source workflows so teams can work more smoothly across complex data systems.&lt;/p&gt;

&lt;p&gt;If Oracle is part of your data stack, Dory can now work with it.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>database</category>
      <category>sql</category>
      <category>oracle</category>
    </item>
  </channel>
</rss>
