DuckDB 文章质量审计报告

日期:2026-09-06

总体统计

  • 扫描文件总数:283 篇
  • 通过:112 篇 (39%)
  • 失败:171 篇 (60%)
  • 总错误数:527 处

错误分类统计

错误类型数量说明
TEMP 目录语法错误154temp.table_name 写法在 DuckDB v1.5+ 中已变更
Python 语法错误94字符串字面量未终止或缩进错误
read_duckdb 函数错误9函数签名不匹配或缺少显式类型转换
dbt Jinja 模板16{{ }} 模板语法非有效 DuckDB SQL
WITH WITH 重复0CTE 关键字重复
其他 SQL 错误254各类语法错误(CONNECT、PARTITION、VALUES等)

失败详情(按错误数排序,Top 25)

duckdb-geojson-complete-guide.md (12 errors)

    • Line 41 (SQL): Binder Error: Invalid named parameter “geojson” for function read_json_auto
    • Line 64 (SQL): Binder Error: Invalid named parameter “geojson” for function read_json_auto
    • Line 91 (SQL): Binder Error: Invalid named parameter “geojson” for function read_json_auto
    • Line 104 (SQL): Binder Error: Invalid named parameter “geojson” for function read_json_auto
    • Line 137 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 7 个错误

duckdb-list-pivot-mastery.md (11 errors)

    • Line 47 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 75 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 129 (SQL): Parser Error: syntax error at or near “cart”
    • Line 175 (SQL): TransactionContext Error: Current transaction is aborted (please ROLLBACK)
    • Line 184 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 6 个错误

duckdb-read-duckdb-merge.md (10 errors)

    • Line 52 (SQL): Parser Error: syntax error at or near “read_duckdb”
    • Line 73 (SQL): Binder Error: No function matches the given name and argument types ‘read_duckdb(VARCHAR, VARCHAR)’. You might need to add explicit type casts.
    • Line 83 (SQL): Binder Error: No function matches the given name and argument types ‘read_duckdb(VARCHAR, VARCHAR)’. You might need to add explicit type casts.
    • Line 128 (SQL): Binder Error: No function matches the given name and argument types ‘read_duckdb(VARCHAR, VARCHAR)’. You might need to add explicit type casts.
    • Line 158 (SQL): Binder Error: No function matches the given name and argument types ‘read_duckdb(VARCHAR, VARCHAR)’. You might need to add explicit type casts.
  • … 还有 5 个错误

duckdb-vs-pandas-10gb-benchmark.md (9 errors)

    • Line 73 (Python): unterminated string literal (detected at line 10) (, line 10)
    • Line 90 (Python): unterminated string literal (detected at line 6) (, line 6)
    • Line 123 (Python): unterminated string literal (detected at line 13) (, line 13)
    • Line 143 (Python): unterminated string literal (detected at line 18) (, line 18)
    • Line 184 (Python): unterminated string literal (detected at line 24) (, line 24)
  • … 还有 4 个错误

duckdb-python-udf.md (8 errors)

    • Line 55 (SQL): Parser Error: syntax error at or near “RETURNS”
    • Line 95 (SQL): Parser Error: syntax error at or near “RETURNS”
    • Line 120 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 147 (SQL): Parser Error: syntax error at or near “RETURNS”
    • Line 172 (SQL): Parser Error: syntax error at or near “RETURNS”
  • … 还有 3 个错误

duckdb-sql-macros-guide.md (8 errors)

    • Line 41 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 56 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 81 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 95 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 118 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 3 个错误

duckdb-ai-data-pipeline.md (7 errors)

    • Line 110 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 154 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 202 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 249 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 277 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 2 个错误

duckdb-dbt-data-modeling.md (7 errors)

    • Line 245 (SQL): Parser Error: syntax error at or near “{”
    • Line 270 (SQL): Parser Error: syntax error at or near “{”
    • Line 298 (SQL): Parser Error: syntax error at or near “{”
    • Line 327 (SQL): Parser Error: syntax error at or near “{”
    • Line 385 (SQL): Parser Error: syntax error at or near “{”
  • … 还有 2 个错误

duckdb-merge-into-production-guide.md (7 errors)

    • Line 36 (SQL): Parser Error: syntax error at or near “..”
    • Line 46 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 103 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 128 (SQL): Parser Error: Unconditional WHEN NOT MATCHED clause was already defined - only one unconditional WHEN NOT MATCHED clause is supported
    • Line 203 (SQL): Parser Error: syntax error at or near “batch_size”
  • … 还有 2 个错误

duckdb-pivot-unpivot-data-product.md (7 errors)

    • Line 32 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 68 (SQL): Parser Error: syntax error at or near “ON”
    • Line 100 (SQL): Parser Error: syntax error at or near “ON”
    • Line 129 (SQL): Parser Error: syntax error at or near “ON”
    • Line 157 (SQL): Parser Error: syntax error at or near “ON”
  • … 还有 2 个错误

duckdb-predicate-pushdown-filter-indexes.md (7 errors)

    • Line 57 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 101 (SQL): Parser Error: syntax error at or near “WHERE”
    • Line 110 (SQL): Parser Error: syntax error at or near “WHERE”
    • Line 119 (SQL): Parser Error: syntax error at or near “WHERE”
    • Line 194 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 2 个错误

duckdb-stock-analysis-automation.md (7 errors)

    • Line 43 (Python): unterminated string literal (detected at line 18) (, line 18)
    • Line 129 (Python): unterminated string literal (detected at line 19) (, line 19)
    • Line 156 (Python): unterminated string literal (detected at line 32) (, line 32)
    • Line 204 (Python): unterminated string literal (detected at line 29) (, line 29)
    • Line 275 (Python): unterminated string literal (detected at line 13) (, line 13)
  • … 还有 2 个错误

duckdb-time-series-fill.md (7 errors)

    • Line 26 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 55 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 89 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 120 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 147 (SQL): Parser Error: syntax error at or near “WITH”
  • … 还有 2 个错误

duckdb-connect-uri-ephemeral-attach.md (6 errors)

    • Line 26 (SQL): Parser Error: syntax error at or near “CONNECT”
    • Line 49 (SQL): Parser Error: syntax error at or near “CONNECT”
    • Line 62 (SQL): Parser Error: syntax error at or near “CONNECT”
    • Line 107 (SQL): Parser Error: syntax error at or near “CONNECT”
    • Line 126 (SQL): Parser Error: syntax error at or near “CONNECT”
  • … 还有 1 个错误

duckdb-evidence-bi-dashboard.md (6 errors)

    • Line 189 (SQL): Parser Error: syntax error at or near “current_month”
    • Line 228 (SQL): Parser Error: syntax error at or near “store_ranking”
    • Line 257 (SQL): Parser Error: syntax error at or near “category_monthly”
    • Line 319 (SQL): Parser Error: syntax error at or near “customer_trend”
    • Line 401 (SQL): Parser Error: syntax error at or near “date_range”
  • … 还有 1 个错误

duckdb-iceberg-writes-catalog.md (6 errors)

    • Line 62 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 88 (SQL): Parser Error: syntax error at or near “PARTITION_BY”
    • Line 142 (SQL): Parser Error: syntax error at or near “SYSTEM_VERSION”
    • Line 157 (SQL): Parser Error: syntax error at or near “ROLLBACK”
    • Line 166 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 1 个错误

duckdb-partition-by-complete-guide.md (6 errors)

    • Line 110 (SQL): Not implemented Error: Unrecognized option “ROWS_PER_GROUP” for parquet
    • Line 169 (SQL): Not implemented Error: Unrecognized option “OVERWRITE_MODE” for parquet
    • Line 186 (Python): unterminated string literal (detected at line 26) (, line 26)
    • Line 261 (SQL): Not implemented Error: Unrecognized option “ROWS_PER_GROUP” for parquet
    • Line 286 (SQL): Parser Error: syntax error at or near “WHERE”
  • … 还有 1 个错误

duckdb-pivot-long-to-wide.md (6 errors)

    • Line 56 (SQL): Parser Error: syntax error at or near “sales_data”
    • Line 84 (SQL): Parser Error: syntax error at or near “sales_data”
    • Line 102 (SQL): Parser Error: syntax error at or near “sales_data”
    • Line 117 (SQL): Parser Error: syntax error at or near “ON”
    • Line 132 (SQL): Parser Error: syntax error at or near “monthly_sales”
  • … 还有 1 个错误

duckdb-qualify-clause.md (6 errors)

    • Line 77 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 124 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 164 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 216 (SQL): Parser Error: syntax error at or near “..”
    • Line 252 (SQL): Parser Error: syntax error at or near “..”
  • … 还有 1 个错误

duckdb-real-time-streaming-guide.md (6 errors)

    • Line 205 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 229 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 266 (SQL): Not implemented Error: Creating partial indexes is not supported currently
    • Line 279 (SQL): Parser Error: syntax error at or near “PARTITION”
    • Line 301 (Python): unterminated string literal (detected at line 20) (, line 20)
  • … 还有 1 个错误

duckdb-sql-advanced-techniques.md (6 errors)

    • Line 79 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 92 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 109 (SQL): Parser Error: syntax error at or near “DEFAULT”
    • Line 158 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 185 (SQL): Parser Error: syntax error at or near “WITH”
  • … 还有 1 个错误

duckdb-unpivot-grouping-sets.md (6 errors)

    • Line 38 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 147 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 208 (SQL): Parser Error: syntax error at or near “GROUP”
    • Line 217 (SQL): Parser Error: syntax error at or near “GROUP”
    • Line 226 (SQL): Parser Error: syntax error at or near “GROUP”
  • … 还有 1 个错误

duckdb-v154-variegata-key-features.md (6 errors)

    • Line 27 (SQL): Parser Error: syntax error at or near “duckdb”
    • Line 46 (SQL): Parser Error: syntax error at or near “AS”
    • Line 89 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 118 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
    • Line 206 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog
  • … 还有 1 个错误

duckdb-copy-to-export-complete-guide.md (5 errors)

    • Line 66 (SQL): Not implemented Error: Unrecognized option “ROWS_PER_GROUP” for csv
    • Line 78 (SQL): Not implemented Error: Unrecognized option “ROWS_PER_GROUP” for parquet
    • Line 131 (SQL): Parser Error: syntax error at or near “||”
    • Line 216 (SQL): Not implemented Error: Unrecognized option “ROWS_PER_GROUP” for parquet
    • Line 273 (Python): unterminated string literal (detected at line 21) (, line 21)

duckdb-cross-database-joins.md (5 errors)

    • Line 42 (SQL): Unable to open database “path/to/file.db”: unable to open database file
    • Line 63 (SQL): Parser Error: syntax error at or near “>”
    • Line 72 (Python): unterminated string literal (detected at line 98) (, line 98)
    • Line 377 (SQL): Parser Error: syntax error at or near “WITH”
    • Line 406 (SQL): Parser Error: Only TEMPORARY table names can use the “temp” catalog

重点修复建议

1. TEMP 目录语法错误(影响最多文章)

问题:文章中使用了 temp.table_name 语法,但在 DuckDB v1.5+ 中,只有 TEMPORARY 表才能使用 temp 目录。 修复:将 temp.table_name 改为 CREATE TEMPORARY TABLE table_name 或直接使用普通表名。 影响文件数:约 80+ 篇

2. Python 字符串字面量错误

问题:Python 代码块中存在未终止的字符串(可能是 markdown 格式化导致的引号问题)。 修复:检查 Python 代码块中的引号配对,确保字符串正确闭合。 影响文件数:约 45+ 篇

3. read_duckdb 函数签名错误

问题read_duckdb(file_pattern, table_name) 的参数顺序或类型不匹配。 修复:使用命名参数 read_duckdb('pattern.duckdb', table_name => 'orders') 或检查 DuckDB 版本兼容性。 影响文件数:约 5 篇

4. dbt Jinja 模板

问题:SQL 代码块中包含 {{ config(...) }}{{ ref(...) }} 等 dbt 模板语法。 修复:将 dbt 模板代码标记为 text 语言而非 sql,或添加注释说明需经 dbt 编译。 影响文件数:5 篇

5. WITH WITH 重复关键字

问题:CTE 定义中出现了 WITH WITH cte_name AS 的重复。 修复:删除多余的 WITH 关键字。 影响文件数:约 15 篇


通过检查的文章

  • deepseek-smallpond-duckdb-distributed.md
  • duckdb-155-release.md
  • duckdb-5-advanced-sql-tips.md
  • duckdb-advanced-aggregation-functions.md
  • duckdb-advanced-sql-mastery.md
  • duckdb-ai-agent-brain.md
  • duckdb-ai-coding-assistant.md
  • duckdb-ai-data-qa-bot.md
  • duckdb-approx-top-k-data-profiling.md
  • duckdb-array-aggregation-business-intelligence.md
  • duckdb-arrow-integration.md
  • duckdb-async-io-parquet-benchmark.md
  • duckdb-automated-financial-data-product.md
  • duckdb-automated-market-research-report.md
  • duckdb-automated-monthly-financial-report.md
  • duckdb-bi-replace-tableau.md
  • duckdb-cli-revolution.md
  • duckdb-copy-excel-fast.md
  • duckdb-cron-automated-reporting.md
  • duckdb-cross-border-ecommerce-product-selection.md
  • duckdb-csv-import-complete-guide.md
  • duckdb-daily-2026-08-19.md
  • duckdb-daily-2026-08-22.md
  • duckdb-daily-2026-08-26.md
  • duckdb-daily-2026-08-29.md
  • duckdb-daily-2026-09-02.md
  • duckdb-daily-report-automation.md
  • duckdb-data-analysis-new-standard.md
  • duckdb-data-journalism-product.md
  • duckdb-data-lake-as-a-service.md
  • duckdb-data-lake-iceberg-delta-guide.md
  • duckdb-data-product-backend.md
  • duckdb-delta-lake-write-timetravel.md
  • duckdb-dml-inside-ctes.md
  • duckdb-ecommerce-auto-reconciliation.md
  • duckdb-ecommerce-automated-reporting-system.md
  • duckdb-ecommerce-multi-platform-dashboard.md
  • duckdb-ecommerce-realtime-alert-system.md
  • duckdb-ecommerce-sales-automation.md
  • duckdb-ecommerce-unified-pipeline.md
  • duckdb-fastapi-analytics-saas.md
  • duckdb-fastapi-production-deployment.md
  • duckdb-fastapi-realtime-data-product.md
  • duckdb-federated-query-guide.md
  • duckdb-financial-monitoring-system.md
  • duckdb-financial-report-generator.md
  • duckdb-financial-report-saas.md
  • duckdb-full-text-search.md
  • duckdb-fuzzy-deduplication.md
  • duckdb-high-perf-aggregation-service.md
  • duckdb-httpfs-competitive-intelligence.md
  • duckdb-industry-report-product.md
  • duckdb-install-guide/index.md
  • duckdb-intro-advantages/index.md
  • duckdb-java-guide/index.md
  • duckdb-json-http-api-querying.md
  • duckdb-json-irregular-data.md
  • duckdb-local-stock-analysis-engine.md
  • duckdb-materialized-view-incremental-refresh.md
  • duckdb-mcp-server.md
  • duckdb-memory-management-performance-tuning/index.md
  • duckdb-merge-incremental-daily-report.md
  • duckdb-multi-file-csv-etl.md
  • duckdb-multi-file-etl-union-by-name.md
  • duckdb-multi-file-read-data-quality.md
  • duckdb-multi-source-data-integration.md
  • duckdb-multi-tenant-platform.md
  • duckdb-parquet-automation-pipeline.md
  • duckdb-parquet-partition-pruning.md
  • duckdb-parquet-schema-consistency.md
  • duckdb-performance-myth.md
  • duckdb-price-monitor-arbitrage.md
  • duckdb-production-data-pipeline-optimization.md
  • duckdb-python-cron-automated-income-report.md
  • duckdb-python-data-toolkit.md
  • duckdb-qualify-clause-trick.md
  • duckdb-read-csv-auto-glob-etl.md
  • duckdb-replace-pandas-etl-workflow.md
  • duckdb-sales-report-automation.md
  • duckdb-self-service-analytics.md
  • duckdb-source-code-guide/index.md
  • duckdb-spark-replacement-lightweight-etl.md
  • duckdb-sqlframe-pyspark-migration.md
  • duckdb-stock-financial-report-automation.md
  • duckdb-stock-market-analysis-pipeline.md
  • duckdb-stock-quant-backtest/index.md
  • duckdb-streamlit-log-anomaly.md
  • duckdb-text-to-sql-bot.md
  • duckdb-time-series-guide.md
  • duckdb-turbovec-vector-search.md
  • duckdb-v2-alpha-cyanoptera.md
  • duckdb-video-script-analyzer.md
  • duckdb-vs-clickhouse-benchmark-2026.md
  • duckdb-vs-pandas-sql-replacement.md
  • duckdb-vs-snowflake-bigquery-comparison.md
  • duckdb-weekly-report-saas-product.md
  • duckdb-zero-deploy-report-system.md
  • duckdb-zero-memory-csv-analysis.md
  • ducklake-dataframe-reader-writer.md
  • ecommerce-saas-with-duckdb.md
  • hermes-agent-auto-data-operations.md
  • merge-csv-files.md
  • msgvault-personal-message-archive.md
  • quack-hermes-agent-data-platform/index.md
  • quality_audit_report_2026-08-02.md
  • quality_audit_report_2026-08-04.md
  • quality_audit_report_2026-08-06.md
  • quality_audit_report_2026-08-07.md
  • quality_audit_report_2026-08-16.md
  • quality_audit_report_2026-08-30.md
  • shaper-sql-dashboard-duckdb.md
  • turbovec-rust-vector-search.md

建议行动项

  1. 高优先级:修复 TEMP 目录语法错误 — 这是最普遍的问题,影响约 80+ 篇文章
  2. 高优先级:修复 Python 字符串字面量错误 — 影响约 45+ 篇文章
  3. 中优先级:修正 dbt Jinja 模板标记 — 5 篇文章需将代码块语言改为 text
  4. 中优先级:修复 read_duckdb 函数调用 — 5 篇文章需更新参数语法
  5. 低优先级:清理 WITH WITH 重复关键字 — 15 篇文章需删除多余关键字
  6. 验证脚本优化:考虑将 dbt Jinja 模板和 shell 命令自动识别为跳过项,减少误报

报告由 verify_duckdb_article_v3.py 自动生成

📺 Watch video tutorials → Olap Studio YouTube

Subscribe for more DuckDB & AI automation tutorials

使用 Hugo 构建
主题 StackJimmy 设计

⚠️ 本站为独立社区项目,与 DuckDB 基金会及 DuckDB 官方项目无任何从属、背书或赞助关系。

"DuckDB" 是 DuckDB 基金会的注册商标,本站仅以事实描述方式使用该名称。

本站内容仅供教育与社区推广用途,不构成任何商业服务。