Categories: MSDN / DotNet / Java / Scripts / Linux / PHP Ask - La ask - La Answer

Insert Error (no null value in Primary key)

I'm trying to insert all of this data from another table

I'm running this query:

INSERT INTO TI([PN],[Start_Date],[Start_Time],[TT(min)],[TB],[SN],[C1],
[TestStand],[TP],[CalFile])
SELECT distinct DATA_WLAN.PN, DATA_WLAN.Start_Date,
DATA_WLAN.Start_Time, DATA_WLAN.[TT(min)], DATA_WLAN.TB,
DATA_WLAN.SN, DATA_WLAN.C1, DATA_WLAN.TestStand, DATA_WLAN.TP,
DATA_WLAN.CalFile
FROM DATA_WLAN;

i can run the select statement by itself and it returns the data i need. and i can do a for loop or something and insert row by row, but that is inefficient, (i thought).

why would this give me this error?

?err.Number
-2147467259
?err.Description
Index or primary key cannot contain a Null value.

Here is my table structure:

CREATE TABLE TI (
[TI_id] COUNTER,
[PN] TEXT(16),
[Start_Date] DATE,
[Start_Time] TIME,
[TT(min)] SINGLE,
[TB] TEXT(22),
[SN] TEXT(32),
[C1] TEXT(32),
[TestStand] TEXT(24),
[TP] TEXT(32),
[CalFile] TEXT(72),
PRIMARY KEY (PN,Start_Date,Start_Time,TestStand)
);

actual executing vb6 code:

ExecuteSQLFile dbpath, SQL_DIR & "create_relational_data_tables.sql", cn, rs

tableFields = StoreTableFields(DATATABLE, rs, cn, dbpath)
query = "INSERT INTO TI([PN],[Start_Date],[Start_Time],[TT(min)],[TB],[SN],[C1],[TestStand],[TP],[CalFile]) "
query = query & vbCrLf & vbTab & "SELECT distinct DATA_WLAN.PN, DATA_WLAN.Start_Date, DATA_WLAN.Start_Time, " & _
"DATA_WLAN.[TT(min)], DATA_WLAN.TB, DATA_WLAN.SN, DATA_WLAN.C1, " & _
"DATA_WLAN.TestStand, DATA_WLAN.TP, DATA_WLAN.CalFile " & _
"FROM " & DATATABLE & ";"

Set rs = New ADODB.Recordset
'Set rs = cn.Execute(query)
cn.Execute query
[1868 byte] By [chupacabra] at [2007-11-11 10:29:27]
# 1 Re: Insert Error (no null value in Primary key)
wait. i think i'm an idiot.

hahaha
chupacabra at 2007-11-11 23:43:17 >
# 2 Re: Insert Error (no null value in Primary key)
...I had forgotten to upload a file. this thread can be deleted.
chupacabra at 2007-11-11 23:44:22 >