VARCHAR的默认和最大长度

时间:2017-11-13 14:46:38

标签: c# apache phoenix squirrel-sql simba

我是Apache Phoenix的新手。我在SQuirrel SQL客户端中使用查询创建了表。在这里,我分享了下面的示例查询。

CREATE TABLE IF NOT EXISTS Sample(Action VARCHAR NOT NULL,Title VARCHAR,Email VARCHAR,Type VARCHAR CONSTRAINT PKforum PRIMARY KEY(Action));

标题列的最大大小为200个字符。

然后我尝试使用Simba Pheonix ODBC驱动程序从Apache Phoenix获取数据。为此,使用下面的C#代码..

OdbcConnection connection = new OdbcConnection("Driver={Simba Phoenix ODBC Driver};host=<host name>;port=8765");
        connection.Open();
        OdbcCommand command = new OdbcCommand(query,connection);
        OdbcDataReader dataReader = command.ExecuteReader();
        DataTable dataTable = new DataTable();
        dataTable.Load(dataReader);
        connection.Close();

加载数据表时,我得到了以下异常。

  

无法启用约束。一行或多行包含违反非null,唯一或外键约束的值。

如果我更改我的查询,请将其工作正常。

CREATE TABLE IF NOT EXISTS Sample(Action VARCHAR NOT NULL, Title VARCHAR(300),Email VARCHAR,Type VARCHAR CONSTRAINT PKforum PRIMARY KEY(Action));

我怀疑的是,  Phoenix服务器中VARCHAR的默认大小和最大大小是多少?

1 个答案:

答案 0 :(得分:0)

范围将是int的类型,如下所述..

https://phoenix.apache.org/language/index.html#int