ODBC style date literals cause parser failure
- 主要言語
- Python
- スター
- 1.4k
- フォーク
- 191
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
The following fails
`mssql-cli -S somehost -U someuser -Q 'select {d '2050-01-01'}'`
However, the SQL statement runs in, for example, DataGrip connected to the same sqlserver using a jdbcdriver. The sqlserver2019 docs indicate it is a valid date literal (described as ODBC API Specific)
https://docs.microsoft.com/en-us/sql/t-sql/data-types/date-transact-sql?view=sql-server-ver15
Simple workaround is not use that syntax for date literals.
| Microsoft SQL Server 2016 (SP2-CU10) (KB4524334) - 13.0.5492.2 (X64) |
| Oct 4 2019 19:14:08 |
| Copyright (c) Microsoft Corporation |
| Standard Edition (64-bit) on Windows Server 2016 Datacenter 10.0 (Build 14393: ) (Hypervisor)
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
提供された mssql-cli コマンドで失敗を再現し、文書化されている SQL Server ODBC の日付リテラル構文と比較します。CLI が使用する SQL 解析のエントリーポイントを追跡します; `{d '2050-01-01'}` を含むクエリが受け付けられ、正常に実行されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- sql
- 領域
- cli, databases
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100