Build error TSD00259: dbschema does not exist

Az egyik projektünkben a Data Dude-ot használjuk az adatbázis szkriptek kezelésére és azt kell mondanom, hogy egészen bevált. Azonban x64-es gépen nem sikerült lefordítanunk az x86-on tökéletesen működő projektet.

Akinek van VS 2008 Team System változata, annak feltétlenül érdemes kipróbálni a Data Dude-ot, teljes nevén a Visual Studio Team System 2008 Database Editiont, mert nagyon praktikus funkciók vannak benne az adatbázis forrásának kezeléséhez. Aki pedig szeret build környezetet automatizálni, annak érdemes megnéznie, mit tud a Data Dude Power Tools. Ráadásul ezek a funkciók a VS 2010-től kezdve már részben a Professional változattól is elérhetőek lesznek, érdemes minél előbb hozzászokni.

Az egyik kedves szolgáltatása ennek a projekt típusnak, hogy ismeri az SQL Server beépített adatbázis objektumait, ahhoz képes IntelliSense-t adni, hivatkozásokat ellenőrizni stb. Ehhez fel kell venni az objektumokat leíró .dbschema fájlokat referenciaként a projektbe:

Database references

Ez tökéletesen működött is x86-os gépen, ám amikor ugyanezt a projektet x64-en akartam fordítani, az alábbi hibaüzenetet kaptam:

"W:\TFS\MySolution\MySolution.sln" (Build target) (1) ->
"W:\TFS\MySolution\Database\Database.dbproj" (default target) (3) ->
(DspBuild target) –>
    C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5):
Build error TSD00259: File C:\Program Files\Microsoft Visual Studio 9.0\VSTSDB\Extensions\SqlServer\2008\DBSchemas\master.dbschema does not exist.
    C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5):
Build error TSD00259: File C:\Program Files\Microsoft Visual Studio 9.0\VSTSDB\Extensions\SqlServer\2008\DBSchemas\msdb.dbschema does not exist.

És milyen igaza van, x64-en tényleg nincsenek .dbschema fájlok a C:\Program Files mappában, mert a C:\Program Files (x86)\ mappában vannak. A megoldás a project fájl kézi átírása. A hibás rész ez:

    <ArtifactReference Include="C:\Program Files\Microsoft Visual Studio 9.0\VSTSDB\Extensions\SqlServer\2008\DBSchemas\master.dbschema">

Írjuk át erre:

    <ArtifactReference Include="$(VSTSDBDirectory)\Extensions\SqlServer\2008\DBSchemas\master.dbschema">

Az msdb.dbschema fájllal ugyanezt kell eljátszanunk, utána fordulni fog a projekt mindkét architektúrán. Érdekes, hogy az Microsoft.SqlTypes.dbschema fájl útvonalát sikerült korrektül rögzítenie, csak a master és az msdb problémás.



Balássy György (MS RD, ASP.NET MVP, MCTS)

Balássy György (MS RD, ASP.NET MVP, MCTS) Villamosmérnök, a BME Automatizálási és Alkalmazott Informatikai Tanszékén webportálok fejlesztését oktatja. 2000 óta foglalkozik a Microsoft .NET platformjával, melynek meghonosításában jelentős szerepet vállalt előadóként, konzulensként és A .NET Framework és programozása című könyv társszerzőjeként. Az MSDN Kompetencia Központon belül a Portál Technológiák Csoport vezetője, szakterülete web alapú rendszerek fejlesztése és üzemeltetése. 2004-ben Magyarországon elsőként kapta meg a Most Valuable Professional címet, majd 2005 óta a Microsoft magyarországi regionális igazgatója. Publikációi a Technet Magazinban, az MSDN Kompetencia Központ honlapján és szakmai blogjában olvashatóak.

2010.01.21. 10:05:49 | Permalink | Hozzászólások: 0 | Tárgyszavak: ,


  • SQL Server Analysis Services szkriptelése - screencast

    Balássy György (MS RD, ASP.NET MVP, MCTS) Az adatbányászati feladatok megoldásához nem elég a T-SQL kifejezőereje, helyette a Data Mining Extensions (DMX) nyelvet használhatjuk. A két nyelv között óriási a hasonlóság – a DMX a T-SQL kiterjesztéseként is felfogható – mindkettőben találunk az adatok szerkezetére (data definition statements) és az adatok kezelésére (data manipulation statements) vonatkozó utasításokat. Tovább »
  • A C# szépségei

    Kővári Bence Azt gondolod ismered a C#-ot? Bizonyíts! Helyezd el az alábbi smiley-kat érvényes, fordítható C# kódban. A megoldáshoz sem stringeket, sem kommenteket nem használhatsz! A feladványok fentről lefele nehezednek, mindegyik feladat megoldható C# 3.0-ában. Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások