Create a unencrypted backup from iPhone to your OS X devices through iTunes. But make sure DO NOT check the option "Encrypt iPhone backup" since you are going to update (import your SMS backup) the backup.
Find the backup you just have done. My OS X is 10.12.6, the directory is /Users/your user/Library/Application Support/MobileSync/Backup/
Then, go into the directory Backup/ and find the directory for iPhone Message. Mine is /Users/myusername/Library/Application Support/MobileSync/Backup/7aded5a6a493ac0b3c41cc930a5421ca035610b5/3d/3d0d7e5fb2ce288813306e4d4636395e047a3d28
As I known, there is only one directory under Backup/, and the following path "3d/3d0d7e5fb2ce288813306e4d4636395e047a3d28" is all the same for every backup. So hopefully you will find it without problems.
The file 3d0d7e5fb2ce288813306e4d4636395e047a3d28 is a SQLite DB. Copy and paste it to somewhere easier to reach for a SQLite visual tool called "DB Browser for SQLite". (If you prefer using command line just type sqlite to enter and use command ".open 3d0d7e5fb2ce288813306e4d4636395e047a3d28" to enter the DB)
After you open 3d0d7e5fb2ce288813306e4d4636395e047a3d28 with SQLite you should see:
Here are 10 database tables. The key tables are message (text, date, handle_id etc.) and handle (contact list).
Now it's the time to use your SMS CSV file to import into the SQLite DB. To do this, you need the knowledge of inserting data to db from csv files, and the backup database schema by understanding the tables showing in the pic.
After inserting your SMS CSV file, replace the 3d0d7e5fb2ce288813306e4d4636395e047a3d28 in the iPhone backup. Finally you can use iTunes to recover your iPhone from this backup.