method private _column_gui_answer = fun input ->
    match self#_get_selection with
      | None -> Dbf_misc.ie ()
      | Some ((_, table_data), _) ->
          let table = table_data.td_table
          and model = table_data.td_model in
            if not (SQL_db.validate_name input.CGUI.cgi_name) then
              raise (Invalid_input "Invalid column name");
            if SQL_db.column_by_name_opt table input.CGUI.cgi_name <> None then
              raise (Invalid_input "Name already used");
            self#_add_column_internal
              ~table:      table
              ~model:      model
              ~name:       input.CGUI.cgi_name
              ~comment:    input.CGUI.cgi_comment
              ~ty:         input.CGUI.cgi_type
              ~nullable:   input.CGUI.cgi_nullable
              ~options:    input.CGUI.cgi_options
              ~spec_ty:    input.CGUI.cgi_spec_ty
              ~ocaml_type: input.CGUI.cgi_ocaml_type
              ~sql2ml:     input.CGUI.cgi_sql2ml
              ~ml2sql:     input.CGUI.cgi_ml2sql
              ()