airflow.providers.common.sql.dialects.dialect

屬性

T

Dialect

通用方言實現。

模組內容

airflow.providers.common.sql.dialects.dialect.T[source]
class airflow.providers.common.sql.dialects.dialect.Dialect(hook, **kwargs)[source]

基類: airflow.utils.log.logging_mixin.LoggingMixin

通用方言實現。

pattern[source]
hook: airflow.providers.common.sql.hooks.sql.DbApiHook[source]
property placeholder: str[source]
property inspector: sqlalchemy.engine.Inspector[source]
property insert_statement_format: str[source]
property replace_statement_format: str[source]
property escape_word_format: str[source]
property escape_column_names: bool[source]
escape_word(word)[source]

如有必要,轉義單詞。

如果該單詞是保留詞或包含特殊字元,或者連線附加欄位中的 escape_column_names 屬性設定為 True,則給定的單詞將被轉義。

引數:

word (str) – 列的名稱

返回:

轉義後的單詞

返回型別:

str

unescape_word(word)[source]

從點分識別符號的每個部分(例如,schema.table)中移除跳脫字元。

引數:

word (str | None) – 轉義後的 schema、表或列名,可能包含多個段。

返回:

不含跳脫字元的單詞。

返回型別:

str | None

classmethod extract_schema_from_table(table)[source]
get_column_names(table, schema=None, predicate=lambda column: ...)[source]
get_target_fields(table, schema=None)[source]
get_primary_keys(table, schema=None)[source]
run(sql, autocommit=False, parameters=None, handler=None, split_statements=False, return_last=True)[source]
get_records(sql, parameters=None)[source]
property reserved_words: set[str][source]
generate_insert_sql(table, values, target_fields, **kwargs)[source]

生成 INSERT SQL 語句。

引數:
  • table – 目標表的名稱

  • values – 要插入到表中的行

  • target_fields – 表中要填充的列名

返回:

生成的 INSERT SQL 語句

返回型別:

str

generate_replace_sql(table, values, target_fields, **kwargs)[source]

生成 REPLACE SQL 語句。

引數:
  • table – 目標表的名稱

  • values – 要插入到表中的行

  • target_fields – 表中要填充的列名

返回:

生成的 REPLACE SQL 語句

返回型別:

str

此條目是否有幫助?