The SQLite and SQLiteCGO drivers SHALL infer the table primary key columns as the upsert conflict target for Save operations when callers do not explicitly provide OnConflict(...).
- WHEN a caller executes
Saveagainst a SQLite table withoutOnConflict(...) - AND the table has primary key columns present in the save data
- THEN the driver SHALL use those primary key columns as the conflict target
- AND the save SHALL insert new rows or update existing rows using SQLite upsert syntax
- WHEN a caller executes
Saveagainst a SQLite table withoutOnConflict(...) - AND the table does not have primary key columns present in the save data
- THEN the driver SHALL return a missing-parameter error instructing the caller to specify
OnConflict(...)or include primary key values
- WHEN a caller executes
Saveagainst a SQLite table withOnConflict(...) - THEN the driver SHALL use the explicitly provided conflict columns