Personal-data detection & masking

✓ functional

Let the decision model flag result columns that look like emails, phones, or card numbers, and mask them in one click.

A built-in list of column-name patterns - password, secret, token, api key, SSN, card number, IBAN, and more - masks matching columns in the grid, in copies, and in exports, so sensitive data does not leak into screenshots or spreadsheets by accident. Each connection can add its own patterns or exempt columns, and revealing a column is in-memory only, undone the next time the query runs.

Catching the columns names miss

Name-based masking cannot know that a column called contact or c17 is full of email addresses. With the optional decision model enabled, SQLly classifies each result column by what it appears to hold - emails, phone numbers, names, card numbers - even when the column name gives nothing away, and speaks up when unmasked columns look personal.

  • The suggestion - a “Mask N personal-looking columns?” chip beside the masking controls in the results toolbar.
  • One click - mask those columns for this result, Always to add them to your global masking rules, or × to dismiss the suggestion for this result.
  • Names and types only - classification sends column names and database types; a small sample of values is included only if you separately turned on “Allow result data to be sent”, and columns your masking rules already cover are never sampled.
Off means off. With the decision model off - the default - nothing runs and nothing is sent anywhere.