sql-dialect-discipline — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited sql-dialect-discipline (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
任何 SQL 必须在文件头部标注 Target_DB:
<!-- Target_DB: ORACLE -->
SELECT NVL(status, 0) FROM ASN;<!-- Target_DB: POSTGRES -->
SELECT COALESCE(status, 0) FROM ASN;| 场景 | Oracle | PostgreSQL | MySQL | ||||
|---|---|---|---|---|---|---|---|
| 空值替换 | NVL(a, b) | COALESCE(a, b) | IFNULL(a, b) 或 COALESCE | ||||
| 当前时间 | SYSDATE | NOW() / CURRENT_TIMESTAMP | NOW() / CURRENT_TIMESTAMP | ||||
| 行数限制 | ROWNUM <= N / FETCH FIRST N ROWS ONLY | LIMIT N | LIMIT N | ||||
| 字符串连接 | `a | b` | `a | b` | CONCAT(a, b) | ||
| 分页 | OFFSET N ROWS FETCH NEXT M ROWS ONLY | OFFSET N LIMIT M | OFFSET N LIMIT M | ||||
| 序列 | SEQ.NEXTVAL | NEXTVAL('seq') | AUTO_INCREMENT | ||||
| 整数除法 | 1.0/3(必须显式小数) | 1.0/3 | 1.0/3 | ||||
| 真值 | = 1 | IS TRUE | = 1 |
CONCAT)asn.TC_ASN_ID,不是 TC_ASN_ID)#{param},JDBC/PL-SQL 用 :param;严禁字符串拼接 SQLCOMMENT ON COLUMN ...,常用查询字段建索引CREATE_DATE_TIME, CREATE_USER_ID, MOD_DATE_TIME, MOD_USER_ID, WM_VERSION_IDpython3 ~/.claude/skills/analysis-to-delivery/scripts/sql-dialect-check.py <项目目录>-- ❌ 错误:Oracle 用 LIMIT
SELECT * FROM ASN LIMIT 10;
-- ✅ 正确:Oracle 用 ROWNUM
SELECT * FROM ASN WHERE ROWNUM <= 10;
-- ❌ 错误:PG 用 NVL
SELECT NVL(status, 0) FROM ASN;
-- ✅ 正确:PG 用 COALESCE
SELECT COALESCE(status, 0) FROM ASN;
-- ❌ 错误:Oracle 整数除法
SELECT 1/3 FROM DUAL; -- 结果是 0!
-- ✅ 正确
SELECT 1.0/3 FROM DUAL; -- 结果是 0.333...references/,用户全局 CLAUDE.md "硬性规则"小节~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.