开发者社区 > 大数据与机器学习 > 实时数仓 Hologres > 正文

创建 Hologres外表,会默认先drop 再creata forigen table 吗?

创建 Hologres外表,会默认先drop 再creata forigen table 吗?

展开
收起
真的很搞笑 2024-01-23 15:12:05 50 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    创建Hologres外部表时,不会默认先执行drop再创建

    在Hologres中,创建外部表的过程通常涉及到定义表的结构、指定数据源以及配置同步选项等步骤。这个过程是添加一个新表,而不是替换现有表。以下是创建外部表的一般步骤:

    1. 准备数据库和表:确保已经准备好了Hologres数据库及目标表。这包括创建数据库和表的必要信息。
    2. 配置参数:在新建外部表的页面,配置各项参数,如表名、列定义、数据源等。
    3. 同步数据和属性:创建外部表时,可以选择同步MaxCompute表的数据,同时将数据库中表字段的Comment和列的Comment一并同步至Hologres。
    4. 使用SQL开发:创建完成后,可以在SQL查询窗口中使用标准的PostgreSQL语言进行开发。

    此外,如果需要创建一个与源表结构或者查询结果相同的新表,可以使用CREATE TABLE AS语句,这会支持自动同步源表数据,但不会复制表属性。在这个过程中,如果存在同名的表,通常会需要手动处理,比如先删除旧表再创建新表,但这并不是默认行为。

    因此,当创建Hologres外部表时,系统不会自动执行drop操作。如果有特殊需求需要先删除现有表再创建新表,这一步骤需要用户自行操作。

    2024-01-23 22:06:56
    赞同 展开评论 打赏
  • 在阿里云Hologres中创建外表(Foreign Table)时,不会默认先执行DROP FOREIGN TABLE再创建新的外表。通常情况下,如果你想要替换一个已有的外表,你需要手动执行DROP FOREIGN TABLE语句来删除现有的外表,然后再执行CREATE FOREIGN TABLE语句来创建新的外表。

    在Hologres中创建外表是为了关联MaxCompute或其他外部数据源的数据,而非覆盖已存在的同名外表。如果外表已经存在且想更新其定义,必须显式地先删除旧的外表。当然,在开发自动化脚本或周期性调度任务时,可以根据需要编写逻辑来实现先删除后创建的动作。

    2024-01-23 15:59:29
    赞同 展开评论 打赏

本技术圈将为大家分析有关阿里云产品Hologres的最新产品动态、技术解读等,也欢迎大家加入钉钉群--实时数仓Hologres交流群32314975

相关产品

  • 实时数仓 Hologres
  • 相关电子书

    更多
    实时数仓Workshop(广州站)- 李佳林 立即下载
    阿里云实时数仓Hologres技术揭秘2.0 立即下载
    实时数仓Hologres技术实战一本通2.0版(下) 立即下载