PythonスクリプトでOPENJSONを使用して、SQLデータベースに基本的なJSONをインポートしようとしています。私は最初より複雑なJSONファイルを試しましたが、このポストのために単純化しました。ここで私が持っているものです。pypyodbc:OPENJSONキーワード "WITH"の近くの構文が正しくありません
sql_statement = "declare @json nvarchar(max) = '{\"name\":\"James\"}'; SELECT * FROM OPENJSON(@json) WITH (name nvarchar(20))"
cursor.execute(sql_statement)
cursor.commit()
connection.close()
私は受信エラー:私はこのエラーを見ている理由について
pypyodbc.ProgrammingError: (u'42000', u"[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near the keyword 'with'. If this statement is a common table expression, an xmlnamespaces clause or a change tracking context clause, the previous statement must be terminated with a semicolon.")
任意の考えは?私は同じpypyodbc /データベース設定で他のSQLクエリを実行することに成功しました。
することが非常に重要バージョンでは利用できませんように、ケースには、データベースが実際にAzureのSQL DBである、あなたは、同様のバージョンを確認する必要がありますここではOPENJSONというSQL Serverは他のSQLエンジンで使用されていないTSQL固有のメソッドです。また、エラーは明らかです。あなたは 'WITH()'句を正しく使用していません(通常、メインクエリで名前で参照される 'SELECT'文のために予約されています)。実際、ここに含めるのは冗長かもしれません。常にManagement Studioでクエリをテストします。 – Parfait