RE: [sqlite] column def vs. constraint at end of create table stmt
>>You can see that the only way to create a two-column constraint is to use >>this syntax (unless you want to define an index, that is). >>Guy hi - I can see where I was confused now. I will make the required changes. thanks for your help, jim
Re: [sqlite] column def vs. constraint at end of create table stmt
At 18:57 11/2/2004 -0500, you wrote: if I have a column def statement for every field and specify unique and primary constraints in each column def, what is the reason the constraint that goes on the very end of the create table would be needed [, constraint]* column-def ::= name [type] [[CONSTRAINT name] column-constraint]* sql-command ::= CREATE [TEMP | TEMPORARY] TABLE table-name ( column-def [, column-def]* [, constraint]* ) Some database users like to have constraints for more then one column at a time; for example, creating a unique constraint for two columns together. As constraint is defined thus: constraint ::= PRIMARY KEY ( column-list ) [ conflict-clause ] | UNIQUE ( column-list ) [ conflict-clause ] | CHECK ( expr ) [ conflict-clause ] You can see that the only way to create a two-column constraint is to use this syntax (unless you want to define an index, that is). Guy
[sqlite] column def vs. constraint at end of create table stmt
hi- I am working on making my program for viewing sql statement results and changing table structure a little nicer. the reason the question came about below is I thought I'd like to add capability to have more than one field be the primary key and also would like to add the constraint unique to work the same. if I have a column def statement for every field and specify unique and primary constraints in each column def, what is the reason the constraint that goes on the very end of the create table would be needed [, constraint]* column-def ::= name [type] [[CONSTRAINT name] column-constraint]* sql-command ::= CREATE [TEMP | TEMPORARY] TABLE table-name ( column-def [, column-def]* [, constraint]* ) thank you very much, jim