What was the message when you ran the script? i.e. (0 row(s) affected)
Maybe the SalePrice existing value is NULL not 0, that's why those scripts do not have any effect at all. Try this one instead:
Code:
UPDATE ProductVariant SET ExtensionData5 = 'sale' where SalePrice = 0 or SalePrice is NULL;
UPDATE ProductVariant SET SalePrice = Price * 0.9 WHERE ExtensionData5 like 'sale';
...then to remove:
Code:
UPDATE ProductVariant SET SalePrice = 0 WHERE ExtensionData5 LIKE 'sale';
MAKE A FULL BACKUP OF YOUR DB FIRST, just in case.