wise-coders / dbschema

DbSchema Database Designer
https://dbschema.com
67 stars 3 forks source link

DbSchema Cassandra CQL/CQLSH support and errors #113

Open brentarias opened 10 months ago

brentarias commented 10 months ago

I am using DbSchema 9.4.1 build 230818.

Apparently DbSchema supports CQL...but not keywords that are unique to CQLSH. That isn't necessarily a problem, except that DbSchema should improve the error message(s) it gives when encountering CQLSH syntax.

For example, I connected to Cassandra DB and I executed the following command:

DESCRIBE TABLE idt.experiment;
//or...
DESC idt.experiment;

Both of the above commands give the same error:

no viable alternative at input '0' (...* FROM idt.experiment WHERE [0]...)

I am new to both Cassandra and DbSchema...so it was a considerable drain on my time to discover the real cause of this error.

For context, I used DbSchema to create a table called idt.experiment using this syntax:

CREATE TABLE idt.experiment (
    part_k int,
    ck int,
    d map<int,text> static,
    PRIMARY KEY (part_k, ck)
);

The above worked successfully in creating the table.

The only way I am successfully able to get a "description" of the table I made, is to switch to the following syntax:

select * from system_schema.columns where keyspace_name='idt' AND table_name='experiment';

The above works, and gives me the following output:

image

I'd love for DbSchema to add support for the CQLSH syntax...but in the absence of that support...please provide a more helpful error message. :)

Incidentally, my copy of DbSchema "About" page says:

Pro Trial: 9 days left

However, I downloaded the community edition...so I don't know why it claims I am using a trial.

wise-coders commented 10 months ago

We will implement the describe in the driver. The Pro edition (features related to the model file) is enabled automatically for 2 weeks, then it turns to Community Edition. I think you are right, we should ask the user if he wants to enable the Pro Trial first.