In Visual Studio 2013, ho creato un progetto di database e importato un database esistente. All'inizio tutto andava bene, e il progetto costruiva e produceva script.Visual Studio ritiene che la sintassi SQL corretta non sia corretta
Tuttavia, ora Visual Studio sembra pensare che ci siano errori di sintassi SQL, restituendo diversi errori SQL46010: Incorrect syntax near:
. Questi sono tutti dal codice generato da VS - non ne ho scritto nulla.
Esempio 1:
ALTER ROLE [db_owner] ADD MEMBER [SomeUser];
SQL46010: Incorrect syntax near ADD.
Esempio 2:
DECLARE @Foo NVARCHAR(7) = 'abcdefg';
SQL46010: Incorrect syntax near =.
Se copio/incolla il codice in SQL Server Management Studio, tutto funziona bene.
Sfortunatamente, questi impediscono la costruzione del progetto, il che significa che non posso pubblicare. Poiché si tratta di errori, non di avvisi, non posso impostarli per essere ignorati nelle impostazioni del progetto.
Esiste una soluzione alternativa in cui è possibile impostare i file dei problemi "Crea azione su Nessuno, ma ho bisogno di questi file inclusi quando pubblico.
ho provato:
- Eliminazione e ri-aggiungendo lo stesso codice
- copiare il codice/incollare al nuovo file SQL
- chiudere e riaprire la soluzione
- di chiusura e riapertura visiva Studio
- Aggiornamento strumenti di dati Microsoft SQL Server (SSDT)
- Aggiornamento g Visual Studio
Il problema più vicina che ho potuto trovare è this MSDN thread dal 2012, affermando che c'è un parser SQL bug SSDT (che mi ha spinto a provare ad aggiornare SSDT).