Changeset: 0a6f5e28c103 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0a6f5e28c103
Modified Files:
        sql/backends/monet5/sql.mx
Branch: Feb2013
Log Message:

handle added types also in declared tables
(grafted from 63c54046f8c456133aa532a69987ecb12960e6e0)


diffs (31 lines):

diff --git a/sql/backends/monet5/sql.mx b/sql/backends/monet5/sql.mx
--- a/sql/backends/monet5/sql.mx
+++ b/sql/backends/monet5/sql.mx
@@ -3970,12 +3970,13 @@ mvc_declared_table_column_wrap(Client cn
        str msg = getSQLContext(cntxt,mb, &m, NULL);
        sql_schema *s = NULL;
        sql_table *t = NULL;
+       sql_type *type = NULL;
        sql_subtype tpe;
        int *ret  = (int *) getArgReference(stk, pci, 0);
        int *rs = (int *) getArgReference(stk, pci, 1);
        str *tname = (str *) getArgReference(stk, pci, 2);
        str *name = (str *) getArgReference(stk, pci, 3);
-       str *type = (str *) getArgReference(stk, pci, 4);
+       str *typename = (str *) getArgReference(stk, pci, 4);
        int *digits = (int *) getArgReference(stk, pci, 5);
        int *scale = (int *) getArgReference(stk, pci, 6);
 
@@ -3984,8 +3985,11 @@ mvc_declared_table_column_wrap(Client cn
                return msg;
        if (*rs != 0)
                throw(SQL, "sql.dtColumn", "Cannot access declared table");
-       if (!sql_find_subtype(&tpe, *type, *digits, *scale))
+       if (!sql_find_subtype(&tpe, *typename, *digits, *scale) &&
+           (type = mvc_bind_type(m, *typename)) == NULL)
                throw(SQL, "sql.dtColumn", "Cannot find column type");
+       if (type)
+               sql_init_subtype(&tpe, type, 0, 0);
        s = mvc_bind_schema(m, dt_schema);
        if ( s == NULL)
                throw(SQL,"sql.declared_table_column","3F000!Schema missing");
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to