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

此条目是否有帮助?