6

Chociaż mogę znaleźć (w internecie) wiele informacji o PreDeploy i PostDeploybudowy działaniu SQL w projekcie bazy danych i rozumiem, że None nie kompiluje ani nie uwzględnia skryptu podczas wdrażania, czy ktoś może ostatecznie doradzić lub skierować mnie do artykułu, który definitywnie definiuje subtelności Build i Compile?Różnica między „Build”, „Kompilacja” i „Brak” Budowanie działań w Visual Studio projektu Database

Moje przybliżone założenie to zarówno z z nich zostanie skompilowane ze schematem, ale tylko Build zostanie wdrożony. Czy to jest poprawne?

To, czego potrzebuję, to poprawne ustawienie do sprawdzania poprawności moich skryptów inicjujących względem bieżącego schematu (i powoduje błąd kompilacji na niepoprawnej strukturze schematu), ale NIE wdrażanie z bazą danych publikowania lub pokazywania w sesji porównania schematu.

+0

BTW, miła szczegółowa odpowiedź w [this] (http://stackoverflow.com/questions/145752/what-are-the-various-build-action-settings-in-visual-studio-project-properties) nie znajduje się w kontekście projektu bazy danych. – Dib

+0

Cóż, "kompilacja" w kontekście skryptu po wdrożeniu/przed wdrożeniem pozwoli tylko na uzyskanie takiego. Reszta "obejmuje" ten skrypt. Nie chcesz próbować ustawiać tych plików na "kompilację", ponieważ kompilator spróbuje je zbudować jako tabele/widoki/inne obiekty. Nie próbowałem ich ustawiać na kompilacji, więc nie miałem pojęcia, co to może zrobić. Zwykle zostawiam je jako "Brak" i sprawdzam je ostrożnie podczas pisania. Możesz napisać wokół nich logikę try/catch, aby pomóc złapać błędy. Nie będą wdrażać publikacji w DB, chyba że je uwzględnisz. –

Odpowiedz

2

W projekcie bazy danych, "Build" służy do plików SQL i "Kompilacja" służy do C# lub VB (tj SQL CLR) plików. Podczas budowania projektu bazy danych, wyjście jest plikiem dacpac zawierającym przetworzone pliki "Build" sql i plik asemblera (.NET) zawierający przetworzone pliki "Compile" C# lub VB.

Pliki oznaczone jako "Brak" są po prostu ignorowane.

Powiązane problemy