2010-04-02 17 views
13

Właśnie zacząłem pracować z projektem bazy danych Visual Studio 2010 Premium. Muszę powiedzieć, że to rzeczywiście kołysze. Jedna rzecz nie mogę dowiedzieć się, jak uniknąć ostrzeżenia SQL04151Projekt bazy danych projektu VS 2010 otrzymuje SQL04151

Procedura:. [Dbo] [moja_procedura] ma nierozwiązane odniesienie do sprzeciwu [MyDatabase] [dbo] [MyItem]...

Czy brakowało mi jakiegoś prostego kroku? Wszystko, co mogę znaleźć online, to tempdb.

+0

Jeśli [MyDatabase] to ta sama baza danych, w której znajduje się [dbo]. [MyProc] może być bardziej korzystne usunięcie [MyDatabase]. (lub przedrostki [$ (DatabaseName)].). Jeśli zainstalujesz wiele instancji na tym samym serwerze, na przykład w środowiskach testowych lub programistycznych, nie uzyskasz oczekiwanych rezultatów i nawet nie zdołasz ich zrealizować, ponieważ referencje mogą zostać zerwane lub działać przy odwoływaniu do niewłaściwego wystąpienia. –

Odpowiedz

3

W swojej procedurze odwołujesz się do [MyDatabase].[dbo].[MyItem], która prawdopodobnie nie jest częścią twojego projektu DB. Mimo że obiekt istnieje w bazie danych, nie jest znany programowi Visual Studio podczas kompilacji, co powoduje błąd.

Zwykle powinieneś mieć cały schemat DB w projekcie DB. Inaczej myślę, że jest coś, co można nazwać "częściowymi projektami DB".

+0

W rzeczywistości wszystkie obiekty są częścią projektu DB. Procedura składowana znajduje się w MyDatabase. Akceptowałem domyślne ustawienia podczas tworzenia projektu, ale oczekuję, że coś przeoczyłem po drodze. – beezler

14

Muszę zastąpić [MyDatabase]. [Dbo]. [MyTable] z [$ (DatabaseName)]. [Dbo]. [MyTable]. To wyjaśniło ostrzeżenia.

Dzięki za pomoc.

+7

Oznaczenie tego elementu jako poprawnej odpowiedzi spowoduje przeniesienie go na górę strony, co ułatwi innym znalezienie go później. – Pedro

+0

Doświadczyłem dokładnie tego samego problemu, to rozwiązało, dzięki. –

0

Sprawdź ustawić Konstruowanie Akcja do Budowanie w okienku Właściwości dla określonego obiektu ..

Powiązane problemy