If you see and error similar to below this means you have 2 rows in your csv file that are exactly the same in terms of logic. Check your csv for duplicates. Usually the Country in above message will give a good clue as to problem area.
Duplicate Row #195 (Country "GBR", Region/State "*", Zip "Pa1___") exception 'Zend_Db_Statement_Exception' with message 'SQLSTATE: Integrity constraint violation: 1062 Duplicate entry '1-GB-0--Pa1___---- 1.0000-10000000.0000--1.0000-49.9400-0.0000-10' for key 'dest_country'' in .../lib/Zend/Db/StatementPdo.php:238
This most commonly occurs when one or more entries have been defined multiple times in different rows. For example: “GBR,ESP,DEU,CHE,ESP,FRA” will flag as a duplicate row because Spain has been defined twice on the same row in the CSV.
When defining a list of country, postcode, etc a trailing comma or two commas next to each other can flag up a duplicate row because they both represent adding an asterisk to that list of entries.
For example, “SS1,SS2,SS3,SS4,,SS5,SS6,SS7″ will be the same as defining “SS1,SS2,SS3,SS4,*,SS5,SS6,SS7″.
Similarly, “SS1,SS2,SS3,SS4,SS5,SS6,SS7,” will be the same as “SS1,SS2,SS3,SS4,SS5,SS6,SS7,*“.
Overlapping ranges could also cause discrepancies with the CSV being uploaded. For example, a price range of 0-100 overlaps with a price range of 75-150 if all of the other fields are the same (I.e.: destination, shipping method, etc).