I can see all the fields, including the not 'show' fields in my datasheet
OK, hmmm, well, if you mean this literally, there is only one way I can
think of that you could see a field in datasheet view but not in design
view, and you're right, somehow your've set the column widths to zero in the
design grid itself.
- In query design view, select all your query fields + 1 blank one (hover
cursor above field-grid until you get a down-pointing arrow & select fields
per standard Windows conventions)
- In the grey area above field names, Double click on any of the lines
that separate one column from another. This should cause all columns to
"auto fit" (just like Excel). Autofit in this case is dependent on the
length of the field name, etc., not the 'no-show' setting.
This should cause all columns present in the query to be visible in design
view, although you may want to manually reduce a lot of them
BTW,
If you save the query (in design mode), when you come back into the query,
the not 'show' columns are moved to the end.
That's only true if you have a criteria or sort on the "no-show" field.
"Unused" fields will disappear during query optimization, and you would need
to add the field to the query again if changed your mind.
Without a criteria or sort in effect, "no-show" fields will be automatically
removed from the query when it is optimized/compiled upon saving or running
(switching to Datasheet view doesn't always cause optimization). Per the
current SQL, the query no longer "uses" the field. (It doesn't appear in the
SELECT, ORDERBY or WHERE clauses, etc..., right?). Since the presence of
the field serves no recognizable purpose to the (Jet?) optimizer, it is
removed from the query.
A field with a criteria/sort, if set to "no-show", will be moved to the
"end" in query design view. (This can occasionally cause surprises if you
are sorting on multiple fields when some are showing and some are not, but
it is easily dealt with once you know what to expect).
HTH,