我想创建一个表格,但机器人能够创建它

时间:2019-03-27 07:26:10

标签: sql hive hql

我想在蜂巢中创建一个具有NOT NULL属性的表,但是我无法创建它。它会说“ ParseException行1:44在create table语句中输入'NOT'不匹配,期望')'附近。”

我尝试使用主键选项,但会给出相同的错误

create table AGENTS(agent_code varchar(10) NOT NULL ,
        agent_name varchar(40),
        working_area varchar(30),
        commission double(10,5),
        phone_no int(15),
        country varchar(25));

2 个答案:

答案 0 :(得分:1)

检查您的Hive版本。像大多数数据库一样,旧版本的Hive不支持NOT NULL约束。 NOT NULL约束是从3.0.0版本开始引入的。

参考:https://issues.apache.org/jira/browse/HIVE-16575

答案 1 :(得分:1)

我认为Hive不支持带有缩放和精度参数的double。而且,我认为int没有长度,也许您打算输入数字:

create table AGENTS (
   agent_code varchar(10) NOT NULL ,
    agent_name varchar(40),
    working_area varchar(30),
    commission decimal(10, 5),
    phone_no decimal(15),
    country varchar(25)
);

NOT NULL约束是最近才实施的,因此这可能也是一个问题。