Menjalankan skrip TSQL yang dihasilkan dari SSMS di SQLCMD. Gagal mengutip

9

Saya mencoba untuk menyebarkan database ke mesin dengan menjalankan skrip yang dihasilkan oleh alat "Hasilkan Script" di SQL Server Management Studio.

Inilah perintah yang telah saya keluarkan:

sqlcmd -S LOCALHOST\sqlexpress -I -U user -P ******** -i 
    C:\Rollouts\NI-9-25-2012_10-42-AM\Rollout.sql > rolloutlog.txt

Saya menerima kesalahan seperti ini:

Sqlcmd: Kesalahan: Kesalahan sintaks pada baris 39488 di dekat perintah '' 'dalam file' C: \ Rollouts \ NI-9-25-2012_10-42-AM \ Rollout.sql '.

Ketika saya melihat baris ini dengan editor teks semua tanda menunjuk ke masalah dengan tanda kutip.

Baris yang dimaksud terlihat seperti ini:

$ (''. cat-menu-new ''). slideDown ('' slow '');

Apakah ada saklar yang harus saya jalankan atau buat skrip untuk mendukung kutipan dalam skrip?

munroan
sumber
Script di atas terlihat seperti JQuery bukan SQL ... ???
Mr.Brownstone
Apakah Anda juga menulis data? Bisakah Anda memposting lagi skrip yang dihasilkan?
Mr.Brownstone
40k + skrip baris? Aduh.
Aaron Bertrand
Haha untuk menjelaskan lebih banyak. Script termasuk konten HTML dan javascript jadi ya konten itu adalah kode jQuery. Kami akhirnya membuat skrip cadangan yang jauh lebih cepat dan lebih mudah.
munroan

Jawaban:

11

$(...) menunjukkan variabel dalam SQLCMD, jadi itu menafsirkan data Anda sebagai variabel.

Gunakan -x opsi baris perintah untuk menonaktifkan variabel.

Jon Seigel
sumber