Was there something specific it the data model that made the versioning hard to write? Or was it that, for this to work across the board, the entire model had to be versioned?
It sounds that SQL itself wasn't the problem. Were you looking for versioning alternatives in SQL that weren't up to par?