I am working on a database program that will insert random data into all fields in the database. What the program is supposed to do is look for field types in the database and insert the random data.
For example, if the program finds a field called LName or FName with data types of varchar, then the program will insert a random string data in the field. If the program finds a field that is a numeric, integer, or small integer, then it will insert random integer numbers.
However, I am having trouble finding the IDENTITY fields. Identity fields are autonumber fields that SQL Server inserts automatically. Once I know that field is an IDENTITY field I can execute the SQL statement.
How do I find the IDENTITY field in the Visual Basic runtime mode?
The interesting part of your question is that although you can interrogate the database for the data types used in a particular table, “IDENTITY” is not a data type but is instead a property. You can attach the Identity property to a couple of data types (int, smallint, tinyint, decimal, or numeric) with scale of 0 and not null.
The answer to your problem lies in the fact that a table can have only one identity column, and you can find out at least if it is an identity column by asking for IDENTITYCOL in your query.