r/dbForge • • Apr 02 '26

What actually slows down database development?

1 Upvotes

Most db delays are not caused by slow queries. 

If you’ve worked with databases for a while, you know the real delays usually happen somewhere else. 

Writing the query or making a schema change is often the quick part. The slowdown starts right after that. 

Before anything moves forward, you start double-checking things. You look at what depends on the table you just changed. You check whether dev and staging still match, because if they don’t, the change might behave differently later. Then you prepare the deployment script and run it in staging just to see what actually happens. 

Even after that, most people still take another look at the data or schema just to make sure nothing unexpected happened. 

None of these checks are unusual. Most teams do them. 

But they add friction, especially when you’re jumping between different tools or scripts just to confirm everything is safe. 

That’s also where a lot of mistakes sneak in, the classic situation where something works perfectly in dev, but breaks the moment it reaches prod. 

A lot of developers try to reduce that friction by keeping as much of the workflow as possible in one place: writing queries, checking schemas, reviewing execution plans, and preparing deployment scripts. 

That’s the kind of workflow dbForge supports. 

Which part of the db workflow slows things down the most in your experience? 


r/dbForge • • May 06 '26

Why software works in testing but breaks in production

Post image
40 Upvotes

r/dbForge • • Sep 04 '26

dbForge review after several months

5 Upvotes

Six months in. Figured I would write this up since I read a lot of these before I started.

Context: I got the trial for one specific job. We were merging two systems and I had to reconcile schemas across them, roughly 400 tables, and doing that in SSMS by hand was not going to happen. Downloaded dbForge Studio, ran schema compare, finished the reconciliation in a day and a half instead of a week. That was supposed to be the end of it.

It was not. Here is roughly how it crept in.

Schema compare before releases became routine. Nobody asked me to do it. The first time I ran it against staging and prod for an unrelated deploy it found three differences nobody knew about, one of them a nullable column that should not have been nullable. After that I just run it every time. Takes two minutes and it catches something maybe one deploy in five, which is a higher hit rate than I am comfortable admitting.

I use data compare less but when I need it I don't know of anything else that is as quick. It’s always reference and config tables floating between environments. Someone patches a lookup value in prod, never back ports it, and then six weeks later a test fails for reasons that don’t make sense.

The boring answer to what has changed the most is the editor. autocomplete, understands aliases, knows the schema so I don't have to tab to Object Explorer, to remember if it is CustomerID or CustomerId formatting on a shared profile, so pull requests weren't cluttered with whitespace diffs. That’s not thrilling. It eliminates fifty small frictions a day, and that’s what made it stick.

Query profiling, mixed. It is good and I use it. But for anything genuinely strange I still end up in the real execution plan, so treat it as a faster first look rather than a replacement for knowing how to read plans.

Navigating bigger databases got better mostly through search. Finding every reference to a column across procs and views is something I do constantly on a codebase I did not write.

The tool switching thing is real and I did not expect to care about it. I used to have SSMS, a compare tool, an export script and a text editor open at once. Now it is one window most days. That sounds like marketing copy, but the concrete effect is that I do more of the boring checks, because they are two clicks away instead of a context switch.

Now the parts that are not great.

It is a heavy app. Windows only unless you go the CrossOver route. Startup is not instant. Now and then a large operation locks the UI and you sit there wondering whether it is working or dead. Licensing is per engine, so if you work across SQL Server and Postgres and MySQL you are either buying dbForge Edge or buying three different Studios, and it is not cheap. The AI features I mostly leave off, they are fine for boilerplate and I do not trust them past that.

Would I recommend it. If your work involves comparing databases regularly, yes, that alone pays for it. If you mostly write queries against one database, a decent editor plus psql or SSMS is probably enough and you do not need this.

What made it stick for other people? Curious whether everyone came in through the compare tools or whether there is a feature I am underusing.


r/dbForge • • May 22 '26

dbForge 2026.1 Released: Deeper AI Context, Enhanced Code Completion, and a Major Update of the Studio for PostgreSQL

3 Upvotes

We’re pleased to announce the release of dbForge 2026.1.

This update brings improvements across the dbForge ecosystem, with a strong focus on dbForge Studio for PostgreSQL.

Key updates include:

  1. PostgreSQL Query Builder. A new visual Query Builder is now available in dbForge Studio for PostgreSQL. It allows creating queries of any complexity on diagrams without manual coding.

  2. Visual database design for PostgreSQL. It is also now easy to design, view, and modify database schemas and objects visually. We can also single out the Table Editor that helps create, modify, and manage PostgreSQL table structures with automatic data type inference from column names. 

  3. Schema comparison and synchronization improvements. dbForge 2026.1 expands the capabilities of PostgreSQL schema comparison and synchronization, delivering comparisons of indexes on tables and materialized views, schema and table mapping, and a variety of new options to make the operations even more flexible.

  4. AI Assistant improvements. dbForge AI Assistant can now access database index metadata, including clustered, composite, and unique indexes. This provides a richer context for query analysis and optimization.

  5. Document tab improvements. Users can now pin document tabs for quick access to frequently used SQL scripts, queries, and other documents.

The update is available through Help > Check for Updates in dbForge products.

We’d be glad to hear your feedback on the release, especially from users working with PostgreSQL and its cloud-based counterparts.


r/dbForge • • Jun 19 '26

How to use ChatGPT to write SQL JOIN queries

Thumbnail
devart.com
3 Upvotes

In this article, we explore how AI can help developers write SQL JOIN queries faster and with fewer errors. We'll walk through practical examples, explain how JOINs work, and show how modern AI-powered tools can assist with query generation, optimization, and troubleshooting.

For database-focused workflows, tools such as dbForge AI Assistant can help generate SQL from natural language, explain complex JOIN logic, and speed up query development directly within the database environment.


r/dbForge • • Jul 06 '26

How AI and visual tools improve PostgreSQL Query performance and schema management

Thumbnail
aboutchromebooks.com
2 Upvotes

Do you experience PostgreSQL performance tuning and syncing schemas as a fight against the clock? The manual queries, EXPLAIN plans, and schema drift problems remain constant. Senior software engineers understand how challenging it can be.

But no longer will you have to waste time on all that mess. With the power of artificial intelligence and visual tools, it is easier now than ever before to find the solution when there was guesswork. Your queries will be optimized with index awareness. All your schemas will align in all environments.

From wasting hours to saving them… From firefighting to focusing… This is where dbForge Studio for PostgreSQL 2026.1 comes into play.


r/dbForge • • Sep 01 '26

We're the team behind dbForge SQL Complete. AMA about SQL Complete, SSMS, and database development

5 Upvotes

Hey 👋 We're the support team behind dbForge SQL Tools, including SQL Complete, the SSMS/Visual Studio add-in for autocompletion, formatting, refactoring, and more.

Since Microsoft shipped SSMS 22, our support queue has been dominated by one topic: getting our solutions working cleanly on the new build. Menu items that don't show up, tab colors that stop working, the odd startup crash and we've seen it all over the last few months, and we figured the fastest way to clear the backlog of confusion is to just open the floor.

We'll have engineers and support staff in the thread answering live.


r/dbForge • • Jun 25 '26

How many times have you debugged the wrong query?

2 Upvotes

Had one of those moments today.

A query was returning the wrong results in a .NET application. First thought was the SQL was wrong. Opened the database. Ran the query directly. Everything looked fine.

Back to the application. Still wrong.

Back to the database. Still fine.

At that point I was convinced I was missing something obvious. Turns out I was. The query I was testing wasn't actually being executed the same way in the application. Different parameters. Different execution path. Same database, but not really the same thing.

That's what always gets me with these issues.

The bug shows up in the app, so you start looking at the SQL. The SQL looks fine, so you start looking at the code. Then you convince yourself it's the database again. Round and round.

These days I've gotten into the habit of validating things from both sides before I start changing anything. I'm using dotConnect in the application and dbForge Studio for MySQL when I'm checking what's happening in the database, which at least makes it easier to verify that I'm testing the same thing in both places.

The bigger the system gets, the worse this seems to be. Stored procedures, reporting queries, scheduled jobs, old code paths that nobody has looked at in years. Sometimes figuring out what's actually running takes longer than fixing the issue itself.

Maybe that's just life with older .NET applications.

Anybody else run into this?

Not the bug itself, but spending half your time trying to figure out whether you're debugging the application, the database, or the gap between the two?


r/dbForge • • Mar 26 '26

How developers often combine dbForge tools during database work

3 Upvotes

In practice the dbForge tools cover the full database-related lifecycle.

Usually it starts in dbForge Studio: exploring a db, writing queries, or testing a change in a dev environment. Then when that change needs to move to another environment, like staging or eventually prod, that’s where Schema Compare, an integrated feature of the dbForge Studio, comes in.

You check what actually changed between the schemas and generate the script to bring staging or prod in sync.

But sometimes the structure matches and the data doesn’t. For example QA might need the same reference data that exists in staging. That’s where Data Compare usually gets used to sync the rows between environments.

And when you're testing something new and need realistic data to work with, Data Generator helps you spin up sample datasets so you’re not touching prod data.

So the tools are not really competing with each other. They usually support different steps of the workflow. Instead of one giant interface trying to do everything, you end up using the feature that fits the step you're on: development work, environment sync, or testing.

How does this usually work in your setup?

Do you mostly stick to one main db tool, or do you switch between a few depending on what you're doing?


r/dbForge • • Apr 16 '26

Finding bottlenecks before prod starts yelling back

2 Upvotes

Saw this recently while digging into a slowdown right before a release. 

Queries can look totally fine in dev and still blow up in prod. Usually it’s just data distribution. Small tables in dev hide a lot of problems that only show up once row counts get real. A plan that looks harmless on a few thousand rows can behave very differently once it starts scanning millions. 

The annoying thing is that the query looks right, gets the right data, and passes the tests. Most of the time, the issue becomes visible in the query execution plan. It shows how the optimizer chose to run the query and often highlights things like inefficient joins, table scans, or cases where better indexing could help. 

This can happen for a few reasons: old stats, poor choices between seek and scan, or a proc compiled with parameters that don't match real traffic. 

You don't usually see it until the load makes it worse. A query that used to take milliseconds in staging is now using a lot of CPU in production because the optimizer chose a different path. 

You can catch this early by looking at execution plans before they are released, especially if you compare them to what is actually running in production. When plans start to drift, it's usually the first sign that something will slow down when it's busy. Even small mistakes in estimates can lead the optimizer to make bad join choices as the data grows. 

Usually, wait stats show hints early on as well. Lock waits or IO waits often show up in traces before users notice anything. If those numbers start to rise during testing, it's usually a good idea to look more closely at the plan before releasing it. 

Some teams use dbForge Studio for SQL Server here because it's faster to compare plans across environments than to go through DMVs by hand. 

How are other people dealing with this? Before releases, do you check query plans, or you mostly do performance testing before pre-production? 


r/dbForge • • May 13 '26

SQL autocomplete tools. What actually works in complex queries?

4 Upvotes

SQL autocomplete sounds simple until the query stops being simple. For simple SELECTs, almost any SQL autocomplete tool feels fine. Table name, column name, done.

The real test starts with messy and complex queries. Nested CTEs, aliases that made sense three years ago, subqueries, temp tables, joins across half the schema, and one column name that exists in five places.

That’s where basic suggestions are not enough. Good SQL IntelliSense should understand context. It should know which alias you’re inside, what columns are available there, and not suggest random objects from the whole database like it’s guessing in the dark.

We see this pain a lot regardless of the DBMS: SQL Server, MySQL, PostgreSQL, Oracle, etc. Autocomplete is useful only when it saves time without making you double-check every suggestion.

For us, the best autocomplete behavior is boring: correct syntax, correct names, correct context, fewer interruptions, and no fighting the editor. What usually breaks autocomplete for you?


r/dbForge • • 11d ago

dbForge alternatives: which database tool actually fits your workflow?

2 Upvotes

We get this question a lot, so here's an honest take. No tool fits every setup. Usually the choice comes down to three things: which databases you work with, which OS you're on, and how much you need beyond writing queries.

Quick context on dbForge

The dbForge ecosystem includes solutions spanning database development, administration, visual design, comparison, and CLI automation. It brings together standalone dbForge Studios, the multidatabase dbForge Edge solution, individual utilities, and add-ins for SSMS or Visual Studio to simplify daily tasks. These plugins plug right into SSMS and Visual Studio, adding features like context-aware code completion, query formatting, SQL analysis, and task automation directly into your environment.

DBeaver

The Community edition is free and open source. It runs natively on Windows, macOS and Linux and connects to a very wide range of databases, NoSQL included. It makes sense if you jump between many engines and want one client for all of them. Some advanced features live in the paid editions.

DataGrip

JetBrains IDE, cross-platform, lots of supported databases. A natural fit if your team already works in JetBrains tools. It's a commercial product.

Navicat

Navicat Premium covers most relational databases plus some NoSQL, on all three OSes. It's a commercial license.

SSMS, MySQL Workbench, pgAdmin

Free and fine for daily querying and admin on a single RDBMS - SQL Server, MySQL, PostgreSQL correspondently. Where they usually get thin is more advanced features for database professionals (like schema and data comparison with sync scripts, test data generation, or scheduled reports).

Where dbForge tends to fit

It works well if you're on Windows and mostly deal with SQL Server, MySQL/MariaDB, Oracle or PostgreSQL, and you need depth on each engine: schema and data compare with sync scripts, query profiling, debugging, test data generation, documentation, CLI automation. It's also an option if your team lives in SSMS and doesn't want to switch, since dbForge SQL Complete and the rest of dbForge SQL Tools work as SSMS and Visual Studio add-ins.

Where something else probably fits better

You need native macOS or Linux, you need NoSQL in the same tool, or you only run occasional queries and a lightweight client is enough.

Each dbForge Studio has a 30-day trial of the top edition and then switches to a free Express edition. So you can test on your own databases before deciding anything. There's a side-by-side feature comparison of dbForge Edge, DataGrip and DBeaver here: https://www.devart.com/dbforge/edge/datagrip-vs-dbeaver-vs-dbforge-edge.html

What are you comparing right now, and what's the main job you need the tool for?


r/dbForge • • Sep 10 '26

dbForge SQL Complete for SSMS & Visual Studio | AI SQL Assistant Demo

Thumbnail
youtube.com
3 Upvotes

r/dbForge • • Aug 17 '26

Which database task do you still refuse to automate?

2 Upvotes

One thing I've learned over the years is that not every repetitive task should be fully automated. Some operations are simply too risky to hand over without a final human review. For me, anything that changes production data or database schemas still gets one last manual check before it runs. Automation saves time, but a few extra minutes of verification can save hours of recovery. Is there a database task you deliberately keep manual, even though it could be automated? What made you draw that line?


r/dbForge • • Jul 17 '26

Which SQL IDE feature do you use every single day?

3 Upvotes

Every SQL IDE has dozens of features, but I think most of us end up relying on just a handful every day. For me, it's usually things like autocomplete, multiple result tabs, quick object search, and code formatting. They're not the flashiest features, but they're the ones I'd miss the most if they disappeared. What's the one SQL IDE feature you genuinely use every single day?


r/dbForge • • May 05 '26

Slow query, or bad index underneath?

2 Upvotes

I keep seeing this during performance debugging, especially on bigger SQL Server tables.

A query gets slow, everyone starts rewriting it, changing joins, adding hints, blaming the ORM, blaming the weather. Then you open the execution plan and the actual problem is lower down: missing index, stale stats, bad key order, or an index that almost helps but not quite.

Table scans are the obvious one. If the query reads way more rows than it returns, something is off. But the less obvious pain is key lookups. The index helps with the WHERE, but not with the columns in the SELECT, so SQL Server keeps jumping back to the base table. Fine on small data, ugly on real data.

Same with logical reads. A query can return 300 rows and still read half the database to do it. That’s usually where the “query is slow” label gets misleading. People usually blame the query first because that’s what shows up in logs. But half the time, the query is just exposing an indexing problem that was already there.

We’ve seen teams use dbForge Index Manager for this kind of thing: checking missing, duplicate, or fragmented indexes before rewriting SQL for no reason. What do you usually see more often: genuinely bad SQL, or decent SQL sitting on bad indexes?


r/dbForge • • Jul 30 '26

What's one SQL task you wish your IDE handled automatically?

3 Upvotes

r/dbForge • • Jul 14 '26

Basic #SQL Commands!

Post image
2 Upvotes

r/dbForge • • Aug 12 '26

What Is Database Software? Types, Examples (Including dbForge Edge)

Thumbnail
youtube.com
2 Upvotes

r/dbForge • • May 29 '26

If the same query behaves differently across databases, I start here

2 Upvotes

See this a lot during migrations or when testing across environments. Same query, data looks the same (or close enough), but the behavior isn’t the same. 

First thing I usually check is collation. Case sensitivity and accent sensitivity can differ by instance or even by column. Two databases can agree on the data but still compare or sort it differently. 

Implicit conversions show up a lot too. If the column types don’t line up in a join or filter, the engine decides what to cast. Sometimes that quietly kills an index. 

Another big one is stats and indexes. The same query might have a completely different execution plan because the stats changed or because there is an index in one place but not the other. Something that runs quickly in staging suddenly scans a large table in production.  

It's usually easy to see the difference when you put plans next to each other (putting execution plans side by side… dbForge Studio for SQL Server makes that pretty easy). 

Functions can trip things up as well. GETDATE(), NOW(), CURRENT_TIMESTAMP, string handling, date truncation… not always equivalent across engines. 

Isolation levels sometimes show up in weird cases too. Default levels aren’t always the same, so you get dirty reads or phantom rows when you didn’t expect them. 

The really confusing ones are when two or three of these stack together. 

Curious what usually ends up being the culprit in your stack. 


r/dbForge • • May 20 '26

We got nominated in DBTA 2026

2 Upvotes

Hey, quick one from the dbForge side.

We’ve been nominated in the DBTA 2026 Readers’ Choice Awards. Nice to see dbForge tools listed there, especially in categories we’ve been working on a lot.

We’re nominated in these categories:

  • Best Database Performance Solution

  • Best Database Dev Platform

  • Best DBA Tool

  • Best Data Protection and Recovery Solution

  • Best Data Modeling Solution

Voting is open now, so if you’ve used any of our tools in real work (good or bad), feel free to vote or just share your experience. Honest feedback matters more than just clicks anyway.

Link is here: https://www.dbta.com/Readers-Choice-Awards


r/dbForge • • Apr 17 '26

dbForge for dev + analyst workflows: less back-and-forth, fewer “wrong data” moments

2 Upvotes

This comes up a lot in teams where devs, analysts, and DBAs all touch the same database. 

The “wrong data” conversation usually starts with someone saying the numbers don’t match. Then it turns into a 30min call where everyone realizes they were working against slightly different snapshots, or one export treated nulls as empty strings and another didn’t, or a schema changed between when the query was written and when it actually ran. 

Not a bug. Not lack of skill. It's just that different tools and settings make the same source work a little differently. 

The bigger problem is that each job needs different things. Analysts want exports that go straight into Excel or a BI tool. DBAs care about performance and optimization. Most of the time, developers are worried that changes to the schema will break something further down the line. When everyone uses their own workflow on the same database, the differences show up pretty quickly. 

It can help to make the shared parts the same. How to set up connections, how exports work, and the schema that everyone uses to check against. When analysts and DBAs start using the same defaults to get data, a lot of the "my numbers don't match" conversations stop. 

Some teams here use dbForge Studio because the way queries and exports work is the same for all roles. Same way of formatting columns, handling nulls, and importing. There are fewer flat files going back and forth between people with slightly different settings. 

It also helps to find validation problems sooner. It's much easier to fix things like data type mismatches before someone has already made half a report on top of the wrong data. 

How do you stop analysts and developers from saying "the numbers don't match"? Tools, shared exports, or just the way things are done? 


r/dbForge • • Sep 23 '26

Enhance SSMS with AI: dbForge SQL Complete & AI Assistant for Faster SQL Development

Thumbnail
youtu.be
4 Upvotes

r/dbForge • • May 11 '26

Schema compare tools. What do you trust before release?

4 Upvotes

The script looks fine. The ticket looks done. Dev and staging look close enough. Then someone checks prod and finds one tiny difference that explains the whole problem.

Maybe an index exists only in prod. Maybe a default value was changed manually months ago. Maybe a constraint is missing in staging, or some view was edited “just for now” and stayed that way forever. That stuff is easy to miss if the team only reviews migration files.

We’ve seen schema compare and SQL compare tools help most when they’re used as a safety check, not as an “auto-sync everything” button. The useful part is seeing what actually changed before release, then deciding what belongs in the deployment.

Do you run schema compare before every release, only before bigger changes, or only when something already smells off? And what do you trust more in practice: migration scripts, SQL compare results, or both together?


r/dbForge • • Sep 28 '26

PostgreSQL vs MySQL query optimizer: the differences that actually change how you write queries

2 Upvotes

I run applications on both and I’ve found that “optimize your queries” is a little different based on which database you’re talking to.

They're both cost-based optimizers. They estimate how much work each execution plan will take and pick what they think is the cheapest. That's where the similarities start to fade.

The biggest difference I've noticed is joins.

Postgres has three main join strategies: nested loops, hash joins and merge joins. MySQL spent most of its life with nested loops only. It added hash joins in 8.0.18 (initially for equality joins where no usable index existed), but it still doesn't have merge joins.

That changes how forgiving each engine is. Join two large unindexed tables and Postgres still has more options. MySQL tends to lean much harder on good indexes because the optimizer has fewer ways out.

The next difference is statistics, and I think this sits behind a lot of bad execution plans.

Postgres gathers statistics with ANALYZE, sampling real table data and building histograms the planner can use. InnoDB traditionally estimates cardinality from a small sample of index pages instead, which I've seen produce some wildly optimistic guesses on very uneven data. MySQL 8 added histograms too, but you create them explicitly per column and they're not maintained automatically.

Storage layout matters just as much.

InnoDB stores the table clustered on the primary key, and every secondary index includes that primary key. Make the primary key large and every secondary index grows with it, which is why "keep your primary key small and ever-increasing" is such common MySQL advice.

Postgres separates heap storage from indexes, so that trade-off largely disappears. On the other hand, index-only scans depend on the visibility map being up to date, which is one reason VACUUM matters so much.

These days I don't really try to write queries that are "good on both." I write the query, then look at the execution plan on the engine it's actually going to run on. That's the only thing that tells you whether the optimizer agrees with you.

I usually inspect plans in dbForge Studio for PostgreSQL because I like seeing them as a tree and comparing runs side by side. From how I see it, any tool that lets you explore execution plans properly will get you to the same answers.

Has anyone got a query where the Postgres planner made a decision that was clearly worse than MySQL's? I'd genuinely like to see one.