This Stackoverflow thread will prove useful for you. Relevant details recreated below:
Issue description:
In some rare cases the sqlcmd utility can fail with
the import and raise the following error: "Unclosed quotation mark
after the character string ..." which indicates that one of SQL
queries has not been executed. This happens because sqlcmd works using
stream processing, i.e. it reads some piece of data, processes it,
reads next piece and so on. In some cases an input file can contain
huge SQL instruction which size is bigger than the amount of the data
that could be processed by sqlcmd at a time, so sqlcmd tries to
execute broken SQL and fails.
Possible solution
The sqlcmd utility can accept the "-a" parameter which defines the
maximum size of packet (piece of data) that will be used during
processing. The maximum value is 32767, the default value is 4096, so
it makes sense to always use this parameter with maximum value.
sqlcmd -i input.sql -a 32767 -o import_log.txt
Alternative solution
If the above fails for you, you might want to consider using the Bulk Copy (BCP) utility. I believe it is currently the fastest way to move data from a remote source to a local clone or vice versa. You can find more details here: https://blogs.msdn.microsoft.com/sqlcat/2010/07/30/loading-data-to-sql-azure-the-fast-way/
bcp AdventureWorksLTAZ2008R2.SalesLT.Customer out C:\Users\user\Documents\GetDataFromSQLAzure.txt -c -U username@servername -S tcp:servername.database.windows.net -P password