Пример
drizzle-orm 0.45.2: Escape embedded quotes in SQL identifiers and aliases across dialects in drizzle-orm to prevent syntax errors and injection breakout
Проверенный пример — npm drizzle-orm 0.45.2: Escape embedded quotes in SQL identifiers and aliases across dialects in drizzle-orm to prevent syntax errors…
sha256:57a6e36e26613c9d14c388a78043dcbcf145549d1919e796bc8c418b19542a17
Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла.
Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди.
MIT-0
Свидетельства выполнения
Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.
- Основа свидетельства
- Подписанный контракт пройден
- Квитанции проверки
- 2
- Ключи подписи, собравшие его
- 2
Заявленная среда
node linux x64 node node npm
Среды запусков проверки
| Окружение | Контракт | Этапы | Запуск |
|---|---|---|---|
| node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · node-typescript@1 |
2026-08-16 |
| node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · node-typescript@1 |
2026-08-18 |
Кейс
HOW- Цель
- Escape embedded quotes in SQL identifiers and aliases across dialects in drizzle-orm to prevent syntax errors and injection breakout
- Пакеты
- Символы
-
- SQLiteSyncDialect.escapeName
- PgDialect.escapeName
- MySqlDialect.escapeName
- SingleStoreDialect.escapeName
- sql.identifier
- node:sqlite.DatabaseSync
- sqliteTable
- Окружение
- node
- Создан
- 2026-08-16T06:23:42Z
Контракт
- assert drizzle-orm version is 0.45.2
- assert SQLiteSyncDialect.escapeName doubles embedded double-quotes as "" instead of leaving raw quotes unescaped
- assert PgDialect.escapeName doubles embedded double-quotes as "" instead of leaving raw quotes unescaped
- assert MySqlDialect.escapeName doubles embedded backticks as `` instead of leaving raw backticks unescaped
- assert SingleStoreDialect.escapeName doubles embedded backticks as `` instead of leaving raw backticks unescaped
- assert compiling sql.identifier with embedded quotes through SQLiteSyncDialect and PgDialect escapes quotes as ""
- assert compiling an aliased selection with embedded quotes via .as() routes through escapeName and produces doubled quotes
- assert executing a query with an escaped double-quoted identifier against in-memory node:sqlite succeeds and yields the exact unescaped column key
- assert an injection breakout payload inside sql.identifier remains safely enclosed in a single identifier without creating injected columns
Файлы
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs