@aurelienbn/克林特-插管-细雨
1克克林特规则 Drizzle Postgres schemas:每个外键列会引导一个索引,在生产流量找到相继扫描之前.
[注] 释放候选人. 还没有消费者校正过.
pnpm add -D @aurelienbbn/oxlint-plugin-drizzle oxlint # oxlint >=1.82.0 <2.0.0
{
"jsPlugins": ["@aurelienbbn/oxlint-plugin-drizzle"],
"rules": {
"drizzle/fk-column-indexed": "error"
}
}
没有预设,没有自定义:索引形状(单,复合,部分)是一种设计选择.
什么火吗
export const posts = pgTable("posts", {
authorId: integer().references(() => users.id), // ❌ fk-column-indexed
});
export const indexedPosts = pgTable(
"indexed_posts",
{ authorId: integer().references(() => users.id) },
(t) => [index().on(t.authorId)], // ✅
);
只有邮递员. MySQL InnoDB 为每个外国密钥创建索引, 当不存在时, 所以 mysqlTable 这是超出范围。 也没有 drizzle-kit (0.31.11, 1.0.0-rc.4) 或 eslint-plugin-drizzle (0.2.3) 检查这个.
精确触发和范围
| * 开火 | 由 / QQ 跳过 |
|---|---|
(单位:千美元) .references(...) 栏,或 foreignKey({ columns }),没有覆盖构建器开始 | index 编号 : uniqueIndex 编号 : unique .on(t.col, ...) 或者说 .using(method, t.col, ...), (中文(简体) ), primaryKey({ columns: [t.col, ...] })栏级 .primaryKey() 编号 : .unique()表格 pgTable 或者说 pgSchema(...).table 进口自 drizzle-orm/pg-core; 对象或回调列; 数组或 0.x 对象外置配置. qq 额外配置不是内线箭头返回字元, 或包含扩展 |
登记的合同库存
从软件包导出 pnpm catalog. 规则特定选项和限制在上文和源测试中都有描述.
| 规则/检查 | 触发或审查范围 |
|---|---|
fk-column-indexed | 要求 Drizzle pgTable (. references () 或 外键 ()) 的每个外键列成为索引的第一列, 唯一的制约, 或主键 . |
信用概念
- https://www.postgresql.org/docs/current/ddl-constructints.html 页面存档备份,存于互联网档案馆 (激励;独立执行)
- 行星尺度/数据库技能/后架/参考/设计(MIT,概念)