开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

trying to delete from a non-transactional table is

trying to delete from a non-transactional table is not allowed. Set tblproperties ("transactional" = "true") in order to use this feature 哪里可以设置表 transactional" = "true

展开
收起
十一0204 2023-04-03 22:57:32 1156 0
3 条回答
写回答
取消 提交回答
  • 意中人就是我呀!

    事务表。此回答整理自钉群“DataWorks交流群(答疑@机器人)”

    2023-04-05 14:14:42
    赞同 展开评论 打赏
  • 是个只会写bug的程序媛啊!!!

    <一> 看着是执行odps的时候语法错误,实际上应该是需要执行sql语法 执行一下alter table <table_name> drop [if exists] partition <pt_spec>,删除分区应该就没问题了。 <二> MaxCompute只允许在创建表时设置Transactional属性,已创建的表不允许通过alter table方式修改Transactional属性。

    2023-04-04 10:27:54
    赞同 展开评论 打赏
  • 存在即是合理

    1、在Hive的命令行或Hue中使用ALTER TABLE命令:

    sql:ALTER TABLE table_name SET TBLPROPERTIES('transactional'='true');

    2、在创建表时使用CREATE TABLE语句和TBLPROPERTIES选项:

    CREATE TABLE table_name ( column1 data_type, column2 data_type, ... )
    CLUSTERED BY (column1) INTO 10 BUCKETS STORED AS ORC TBLPROPERTIES ('transactional'='true');

    2023-04-04 10:07:02
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

热门讨论

热门文章

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载