No, I am not kidding, and I don't see it as even remotely pathetic. Select
queries are for arranging data that are stored in tables, and for performing
calculations of various sorts with the stored data. Other types of queries
can add and change data stored in tables, but you specifically mentioned a
select query.
You can add a PK field to the table. Just add the field. My quick test
shows that it populates as it should.
To increment by 1 with no gaps you could set the Default Value of a control
bound to a field to:
=DMax("YourField","YourTable")+1
For more information about this method, including its use in a multi-user
environment, see:
http://www.rogersaccesslibrary.com/download3.asp?SampleName=AutonumberProblem.mdb
To add sequential numbers to a query you could probably use or adapt
something like the following:
http://www.lebans.com/rownumber.htm
Remember that a PK can be used to uniquely identify a record, but that a PK
alone does not guarantee that the rest of the record is unique. A primary
key would not prevent your adding the same vendor twice to a Vendor table.
For that you would need a unique index on the Vendor name field, or on a
combination of Name and Address, or whatever is needed. Without that you
could have XYZ Corporation at 123 Main ST any number of times.