How to avoid duplicate records when using datainsert?
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Neil Caithness
am 21 Jan. 2016
Kommentiert: Neil Caithness
am 22 Jan. 2016
datainsert fails when it encounters any duplicate records. Is there a way to specify it should just skip the duplicates, perhaps returning an index of the successful inserts?
datainsert(conn,'consdata',colnames,tbl)
Error using database.ODBCConnection/insert (line 264)
ODBC Driver Error: ERROR: duplicate key value violates unique constraint "consdata_pkey";
Error while executing the query
0 Kommentare
Akzeptierte Antwort
Roger Wohlwend
am 22 Jan. 2016
No, you can't specify something like that. If you want datainsert to continue with the next dataset if it encounters a duplicate, just use try-catch.
try
datainsert(conn,'consdata',colnames,tbl)
catch E
% This section is only executed if a duplicate record exists. So if you want
% Matlab to remember when datainsert failed because of a duplicate record,
% put some code here. For expample if you execute this try-catch within a
% Loop, write the Loop index to a vector.
end
3 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Database Toolbox finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!