ADB中按这样的语法确实不会产生自增主键?

问题1:ADB中按这样的语法确实不会产生自增主键?CREATE TABLE user_101 ( id BIGINT(20) NOT NULL, name VARCHAR(255) NULL DEFAULT NULL, gender VARCHAR(2) NULL DEFAULT NULL, email VARCHAR(255) NULL DEFAULT NULL, phone VARCHAR(255) NULL DEFAULT NULL, tel VARCHAR(32) DEFAULT NULL, postcode VARCHAR(255) NULL DEFAULT NULL, address VARCHAR(255) NULL DEFAULT NULL, idcard VARCHAR(255) NULL DEFAULT NULL, bankcard VARCHAR(64) DEFAULT NULL, birth DATETIME NULL DEFAULT NULL, nid BIGINT(20) ) DISTRIBUTE BY HASH(id) INDEX_ALL='N';image.png 问题2:这个可以通过sql执行吗?

展开
收起
真的很搞笑 2023-05-24 17:02:17 240 分享 版权
2 条回答
写回答
取消 提交回答
  • 您提供的表创建语句,其中并没有定义任何自增长主键。要在 ADB 中创建一个自增长主键,可以在指定列的数据类型时使用 auto_increment 关键字。我举个例子:

    CREATE TABLE user_101 (
        id BIGINT(20) NOT NULL AUTO_INCREMENT,
        name VARCHAR(255) NULL DEFAULT NULL,
        gender VARCHAR(2) NULL DEFAULT NULL,
        email VARCHAR(255) NULL DEFAULT NULL,
        phone VARCHAR(255) NULL DEFAULT NULL,
        tel VARCHAR(32) DEFAULT NULL,
        postcode VARCHAR(255) NULL DEFAULT NULL,
        address VARCHAR(255) NULL DEFAULT NULL,
        idcard VARCHAR(255) NULL DEFAULT NULL,
        bankcard VARCHAR(64) DEFAULT NULL,
        birth DATETIME NULL DEFAULT NULL,
        nid BIGINT(20)
    ) DISTRIBUTE BY HASH(id) INDEX_ALL='N';
    

    我这里指定了 id 字段为自增长主键,此时每次插入数据时,id 字段的值都会自动递增。。

    2023-05-24 23:38:01
    赞同 展开评论
  • 回答1:可能和第三方工具的兼容性有问题,导致没有显示。通过dms平台输入show create table 表名,确定下 回答2:可以的,不过我这里再后台已经配置好了,只需要重新执行下报错的SQL。,此回答整理自钉群“云数据仓库ADB-开发者群”

    2023-05-24 17:12:20
    赞同 展开评论

阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。

收录在圈子:
+ 订阅
让用户数据永远在线,让数据无缝的自由流动
还有其他疑问?
咨询AI助理