问题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'; 问题2:这个可以通过sql执行吗?
您提供的表创建语句,其中并没有定义任何自增长主键。要在 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 字段的值都会自动递增。。
回答1:可能和第三方工具的兼容性有问题,导致没有显示。通过dms平台输入show create table 表名,确定下 回答2:可以的,不过我这里再后台已经配置好了,只需要重新执行下报错的SQL。,此回答整理自钉群“云数据仓库ADB-开发者群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。