Changeset: 06ddd1f8412e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=06ddd1f8412e
Modified Files:
        sql/server/rel_schema.c
        sql/server/sql_parser.y
Branch: default
Log Message:

Reverted some changes


diffs (60 lines):

diff --git a/sql/server/rel_schema.c b/sql/server/rel_schema.c
--- a/sql/server/rel_schema.c
+++ b/sql/server/rel_schema.c
@@ -409,16 +409,17 @@ column_option(
                        if (e && is_atom(e->type)) {
                                atom *a = exp_value(sql, e, sql->args, 
sql->argc);
 
-                               if(!atom_cast(sql->sa, a, &cs->type)) {
-                                       (void) sql_error(sql, 02, "42000!could 
not cast the default value to the column type\n");
-                                       return SQL_ERR;
+                               if (atom_null(a)) {
+                                       mvc_default(sql, cs, NULL);
+                                       res = SQL_OK;
+                                       break;
                                }
                        }
                        /* reset error */
                        sql->session->status = 0;
                        sql->errstr[0] = '\0';
                }
-               r = symbol2string(sql, s->data.sym, &err);
+               r = symbol2string(sql, s->data.sym, &err);
                if (!r) {
                        (void) sql_error(sql, 02, "42000!incorrect default 
value '%s'\n", err?err:"");
                        if (err) _DELETE(err);
@@ -737,22 +738,11 @@ table_element(mvc *sql, symbol *s, sql_s
                char *cname = l->h->data.sval;
                symbol *sym = l->h->next->data.sym;
                sql_column *c = mvc_bind_column(sql, t, cname);
-               sql_exp *e = NULL;
 
                if (!c) {
                        sql_error(sql, 02, "42S22!ALTER TABLE: no such column 
'%s'\n", cname);
                        return SQL_ERR;
                }
-               e = rel_logical_value_exp(sql, NULL, sym, sql_sel);
-
-               if (e && is_atom(e->type)) {
-                       atom *a = exp_value(sql, e, sql->args, sql->argc);
-
-                       if(!atom_cast(sql->sa, a, &c->type)) {
-                               (void) sql_error(sql, 02, "42S22!ALTER TABLE: 
could not cast the default value to the column type\n");
-                               return SQL_ERR;
-                       }
-               }
                r = symbol2string(sql, sym, &err);
                if (!r) {
                        (void) sql_error(sql, 02, "42S22!ALTER TABLE: incorrect 
default value '%s'\n", err?err:"");
diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y
--- a/sql/server/sql_parser.y
+++ b/sql/server/sql_parser.y
@@ -1550,7 +1550,7 @@ default:
  ;
 
 default_value:
-    atom       { $$ = $1; }
+    simple_scalar_exp  { $$ = $1; }
  ;
 
 column_constraint:
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to