# SQL Review

> Catch unsafe SQL before it reaches production: 100+ automated review rules across linting, schema-aware semantic checks, and risk-based approval, wired into your CI/CD pipeline. Self-hosted, open-source.

Source: https://www.bytebase.com/sql-review/

---

## Catch unsafe SQL before it reaches production.

A missing index, a locking ALTER, a backward-incompatible column drop — automated SQL review catches it in the pull request, not after the incident is open.

## Three layers of review, one pass.

### Linting

Syntax and style checks catch typos, formatting violations, and dialect mistakes before the SQL ever reaches the database.

### Semantic rules

Schema-aware checks require primary keys, prohibit destructive cascades, enforce naming conventions, and flag missing indexes.

### Policy with approval

Role-based human review routes production changes to a DBA, while safe, lower-risk changes clear automatically.

## Built into the pipeline you already run.

### 100+ built-in rules

Anti-patterns, locking DDL, backward-incompatible changes, and naming violations are caught by rules you configure per severity, scope, and engine.

### SQL review in CI

Wire review into GitHub, GitLab, or Bitbucket; findings land as pull-request comments and status checks before merge.

### One ruleset, every engine

The same review policy applies across PostgreSQL, MySQL, SQL Server, Oracle, and 20+ engines.

## Read in order.

### Why SQL review

When strict requirements help and when they get in the way. /blog/is-sql-review-necessary

### From linting to governance

The three layers, and the tool comparison. /blog/sql-review-tool-for-devs

### SQL review in GitHub

A single GitHub Action runs schema-aware review on every pull request, before any change deploys. /blog/integrate-sql-review-into-github

## Get Started

- [Contact us](https://www.bytebase.com/contact-us/)
- [Start now (cloud)](https://console.bytebase.com)
