Използване на User Instance
означава, че SQL Server създава специално копие на този файл на базата данни за използване от вашата програма. Ако имате две различни програми, използващи същия низ за връзка, те получават две напълно различни копия на базата данни. Това води до много от объркване, тъй като хората ще тестват актуализирането на данни с програмата си, след което ще се свържат с различно копие на своята база данни в Management Studio и ще се оплакват, че актуализацията им не работи. Това ги изпраща през погрешна серия от стъпки за преследване на дива гъска, опитвайки се да отстранят грешния проблем.
Тази статия разглежда по-задълбочено как да използвате тази функция, но обърнете внимание на първата бележка:User Instance
функцията е отхвърлена . В SQL Server 2012 предпочитаните алтернативи са (в този ред, IMHO):
-
Създайте или прикачете вашата база данни към реален екземпляр на SQL Server. След това вашият низ за връзка ще трябва само да посочи името на екземпляра, името на базата данни и идентификационните данни. Няма да има объркване, тъй като Management Studio, Visual Studio и вашата програма(и) ще се свързват към едно копие на базата данни.
-
Използвайте
SqlLocalDb
за местно развитие. Вярвам, че ви насочих към тази статия вчера:„Първи стъпки с SQL Server 2012 Express LocalDB.“ - Използвайте SQL Server Compact. Най-малко ми харесва тази опция, защото функционалността и синтаксисът не са едни и същи - така че не е задължително да ви предостави цялата функционалност, която в крайна сметка ще искате да разгърнете. Компактното издание също е остаряло, така че има и това.
Разбира се, ако използвате версия AttachDbFileName
.
РЕДАКТИРАНЕ: Писах в блог за това тук:
- Лоши навици:Използване на AttachDBFileName