Pomocí User Instance
znamená, že SQL Server vytváří speciální kopii tohoto databázového souboru pro použití vaším programem. Pokud máte dva různé programy používající stejný připojovací řetězec, získají dvě zcela odlišné kopie databáze. To vede k hodně zmatku, protože lidé budou testovat aktualizaci dat pomocí svého programu, pak se připojí k jiné kopii své databáze v Management Studio a stěžují si, že jejich aktualizace nefunguje. To je pošle přes chybnou sérii kroků honičky divoké husy ve snaze vyřešit nesprávný problém.
Tento článek jde hlouběji do toho, jak tuto funkci používat, ale věnujte pozornost hned první poznámce:User Instance
funkce byla zastaralá . V SQL Server 2012 jsou preferované alternativy (v tomto pořadí, IMHO):
-
Vytvořte nebo připojte svou databázi ke skutečné instanci SQL Server. Váš připojovací řetězec pak bude muset zadat pouze název instance, název databáze a přihlašovací údaje. Nedojde k žádné záměně, protože Management Studio, Visual Studio a vaše programy se budou všechny připojovat k jediné kopii databáze.
-
Použijte
SqlLocalDb
pro místní rozvoj. Věřím, že jsem vás včera upozornil na tento článek:„Začínáme s SQL Server 2012 Express LocalDB.“ - Používejte SQL Server Compact. Tato možnost se mi líbí nejméně, protože funkce a syntaxe nejsou stejné - takže vám nemusí nutně poskytnout všechny funkce, které nakonec budete chtít nasadit. Kompaktní edice je také zastaralá, takže ano.
Samozřejmě pokud používáte verzi AttachDbFileName
.
UPRAVIT: O tom jsem napsal blog zde:
- Špatné návyky:Používání AttachDBFileName