@@ -117,69 +117,105 @@ static void sql3column_dump (sql3column *column) {
117117 // column name
118118 sql3string * ptr = sql3column_name (column );
119119 sql3string_dump (ptr , "Column Name" );
120-
120+
121121 // column type
122122 ptr = sql3column_type (column );
123123 sql3string_dump (ptr , "Column Type" );
124-
124+
125125 // column length
126126 ptr = sql3column_length (column );
127127 sql3string_dump (ptr , "Column Length" );
128-
129- // constraint name
130- ptr = sql3column_constraint_name (column );
131- sql3string_dump (ptr , "Constraint Name" );
132-
128+
133129 // column comment
134130 ptr = sql3column_comment (column );
135131 if (ptr ) sql3string_dump (ptr , "Column Comment" );
136-
132+
137133 // flags
138134 printf ("Primary Key: %d\n" , sql3column_is_primarykey (column ));
139135 printf ("Autoincrement: %d\n" , sql3column_is_autoincrement (column ));
140136 printf ("Not NULL: %d\n" , sql3column_is_notnull (column ));
141137 printf ("Unique: %d\n" , sql3column_is_unique (column ));
142-
143- // enums
138+
139+ // primary key constraint name
140+ ptr = sql3column_pk_constraint_name (column );
141+ sql3string_dump (ptr , "Primary Key Constraint Name" );
142+
143+ // primary key order
144144 sql3order_clause order = sql3column_pk_order (column );
145145 if (order != SQL3ORDER_NONE )
146146 printf ("Primary Key Order: %s\n" , (order == SQL3ORDER_ASC ) ? "ASC" : "DESC" );
147-
147+
148+ // primary key conflict clause
148149 sql3conflict_clause clause = sql3column_pk_conflictclause (column );
149150 if (clause != SQL3CONFLICT_NONE )
150151 printf ("Primary Key Conflict Cause: %s\n" , sql3conflict_clause_str (clause ));
151-
152+
153+ // not null constraint name
154+ ptr = sql3column_notnull_constraint_name (column );
155+ sql3string_dump (ptr , "Not NULL Constraint Name" );
156+
157+ // not null conflict clause
152158 clause = sql3column_notnull_conflictclause (column );
153159 if (clause != SQL3CONFLICT_NONE )
154160 printf ("Not NULL Conflict Cause: %s\n" , sql3conflict_clause_str (clause ));
155-
161+
162+ // unique constraint name
163+ ptr = sql3column_unique_constraint_name (column );
164+ sql3string_dump (ptr , "Unique Constraint Name" );
165+
166+ // unique conflict clause
156167 clause = sql3column_unique_conflictclause (column );
157168 if (clause != SQL3CONFLICT_NONE )
158169 printf ("Unique Conflict Cause: %s\n" , sql3conflict_clause_str (clause ));
159170
160- sql3gen_type gen_type = sql3column_generated_type (column );
161- if (gen_type != SQL3GENTYPE_NONE )
162- printf ("Generated Type: %s\n" , sql3generated_type_str (gen_type ));
163-
164- // check expr
165- ptr = sql3column_check_expr (column );
166- sql3string_dump (ptr , "Check Expression" );
167-
171+ // check constraints
172+ size_t num_check_constraints = sql3column_num_check_constraints (column );
173+ for (size_t i = 0 ; i < num_check_constraints ; ++ i ) {
174+ // check constraint name
175+ ptr = sql3column_check_constraint_name (column , i );
176+ sql3string_dump (ptr , "Check Constraint Name" );
177+
178+ // check expr
179+ ptr = sql3column_check_expr (column , i );
180+ sql3string_dump (ptr , "Check Expression" );
181+ }
182+
183+ // default constraint name
184+ ptr = sql3column_default_constraint_name (column );
185+ sql3string_dump (ptr , "Default Constraint Name" );
186+
168187 // default expr
169188 ptr = sql3column_default_expr (column );
170189 sql3string_dump (ptr , "Default Expression" );
171-
190+
191+ // collate constraint name
192+ ptr = sql3column_collate_constraint_name (column );
193+ sql3string_dump (ptr , "Collate Constraint Name" );
194+
172195 // collate name
173196 ptr = sql3column_collate_name (column );
174197 sql3string_dump (ptr , "Collate" );
175-
198+
199+ // foreign key constraint name
200+ ptr = sql3column_foreignkey_constraint_name (column );
201+ sql3string_dump (ptr , "Foreign Key Constraint Name" );
202+
176203 // foreign key
177204 sql3foreignkey * fk = sql3column_foreignkey_clause (column );
178205 sql3foreignkey_dump (fk );
179206
207+ // generated constraint name
208+ ptr = sql3column_generated_constraint_name (column );
209+ sql3string_dump (ptr , "Generated Constraint Name" );
210+
180211 // generated expr
181212 ptr = sql3column_generated_expr (column );
182213 sql3string_dump (ptr , "Generated Expression" );
214+
215+ // generated type
216+ sql3gen_type gen_type = sql3column_generated_type (column );
217+ if (gen_type != SQL3GENTYPE_NONE )
218+ printf ("Generated Type: %s\n" , sql3generated_type_str (gen_type ));
183219}
184220
185221static void sql3tableconstraint_dump (sql3tableconstraint * constraint ) {
0 commit comments