sql >> データベース >  >> RDS >> Oracle

Python-pyparsingを使用したSQLの解析

    このパーサーはかなり前に作成されたものであり、結果名で複数の値を処理することは、後になるまで実現しませんでした。

    引用したパーサーの次の行を変更します:

    single_source = ( (Group(database_name("database") + "." + table_name("table")) | table_name("table")) + 
    

    single_source = ( (Group(database_name("database") + "." + table_name("table*")) | table_name("table*")) + 
    

    select_stmtパーサーを介してサンプルステートメントを実行すると、次のようになります。

    select * from xyz  inner join dhf  on df = hfj  where z > 100
    ['SELECT', ['*'], 'FROM', 'xyz', 'INNER', 'JOIN', 'dhf', 'ON', ['df', '=', 'hfj'], 'WHERE', ['z', '>', '100']]
    - columns: ['*']
    - table: [['xyz'], ['dhf']]
      [0]:
        ['xyz']
      [1]:
        ['dhf']
    - where_expr: ['z', '>', '100']
    


    1. trustCertificateKeyStoreUrlとclientCertificateKeyStoreUrl

    2. cURLを使用してWebサイトから特定のデータをフェッチし、phpを使用してデータベースに保存する方法

    3. Dot Net Entity Frameworkデータベースの更新では、mysqlデータベースにテーブルが作成されません

    4. ツリー構造でデータベースを保存およびクエリする方法