I have a table that has always been in my back-end of this application.
The table is getting quite large, and, on top of that, we lose records
out of this table. They just dissappear! No rhyme or reason to it.
I imported the table into SQL, and re-linked it back into the front end
of the application. All the fields show. I had to pick a primary key,
which is fine, it's a text field (nvarchar 255), and it is indeed a
unique value.
The problem started when I tried to use a simple query on this table.
The query is in access, SQL reads:
select * from catalog where catalog.exists = -1
even though -1 be a value in the exists field in catalog, (0 is the
other value) it doesn't return a lick of data. If I change the query
to:
select * from catalog where catalog.exists <0
then the query returns the proper record set. Anyone have any idea why
this could be happening?
In access (the old table) catalog had exists as a type Yes/No. Default
was no. In SQL, during the import the data type was changed to (Bit
Length 1, Not Null). Bit sounds problematic here, I'm really wanting a
true/false. Shouldn't it be boolean? Is there a boolean as a SQL
type, would this be more appropriate for a true/false situation? Am I
going to run into lots of problems with data types that get
auto-converted from access into SQL?
I noticed that SQL wants to bracket many of field names I have used
previously in this table in Access. User, Desc, Exists, Group, Open,
Close. This table is so big and unwieldy, and there is the problem of
the losing records, so I feel like I must put it in SQL to get a handle
on it - Access has no way to keep track of who or what is deleting a
record. My understanding is that it is possible to turn auditing of
some kind on SQL so that I can figure out who/what is deleting those
records.
Sorry too many questions in one post.
Thanks in Advance!
-BrianDP
Accessor on the move to SQL