ScriptDom parser for Sql Server 2022 fails to parse exec variable with version
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 45/100
調査の方向性
エントリポイントの TSql160Parser から始め、Microsoft.SqlServer.DacFx 161.6367.0-preview を使用する .NET 6 コンソールプロジェクトで、issue にある 3 つの CREATE PROCEDURE の例を実行します。EXEC @ProcName を ;2 ありとなしで解析した結果を比較し、続いて変数形式の parser path を追跡します。最後の例がセミコロン付近のエラーなしで解析できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
- SqlPackage or DacFx Version: 161.6367.0-preview
- .NET Framework (Windows-only) or .NET Core: .Net 6.0
- Environment (local platform and source/target platforms): N/A
Steps to Reproduce:
- Create a new C# Console Project
- Add latest Nuget package for Microsoft.SqlServer.DacFx (161.6367.0-preview)
- Run code below
using Microsoft.SqlServer.TransactSql.ScriptDom;
var parser = new TSql160Parser(true); // Sql server 2022 parser
IList<ParseError> errors;
parser.Parse(new StringReader("CREATE PROCEDURE Proc1 AS EXEC ProcName;2"), out errors);
// No parsing errors
parser.Parse(new StringReader("CREATE PROCEDURE Proc1 AS DECLARE @ProcName SYSNAME = 'Proc2' EXEC @ProcName"), out errors);
// No parsing errors
parser.Parse(new StringReader("CREATE PROCEDURE Proc1 AS DECLARE @ProcName SYSNAME = 'Proc2' EXEC @ProcName;2"), out errors);
// Parsing error! "Incorrect syntax near ;." This should parse succesfully
Did this occur in prior versions? If not - which version(s) did it work in?
Not work in all prior versions.
(DacFx/SqlPackage/SSMS/Azure Data Studio)
- 主要言語
- GAP
- スター
- 277
- フォーク
- 43
- 平均マージ
- 6日 17時間
- マージ済み PR(30日)
- 3
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
microsoft/SqlScriptDOM のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
microsoft/SqlScriptDOM#228 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
microsoft/SqlScriptDOM#183 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 56/100
microsoft/SqlScriptDOM#226 · リアクション 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
microsoft/SqlScriptDOM#225 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
microsoft/SqlScriptDOM#224 ·
microsoft/SqlScriptDOM の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
internal.h中,漏掉了1个定义。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
oxc-project/oxc#26944 ·