Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Est-il possible d'accéder à une base de données .mdf sans SQL Server ?

Je ne pense pas qu'il soit possible d'interagir avec un fichier MDF sans passer par un moteur SQL Server. Vous installerez très probablement SQL Server Express (ce qui devrait être une option si vous choisissez d'ajouter/supprimer des programmes pour Visual Studio, ou vous pouvez le télécharger séparément à partir d'ici - c'est l'option 2008 R2 avec outils), attachez votre base de données , puis connectez-vous à ce moteur depuis votre programme.

De nombreux tutoriels en ligne vous suggéreront d'utiliser les User Instances fonctionnalité et AttachDbFileName . Je vous suggère de ne pas suivez cette voie car cela prête souvent à confusion - de très nombreux utilisateurs se connectent à une instance de la base de données via Management Studio, une instance différente de leur programme, puis ne comprennent pas pourquoi l'un ne voit pas les mises à jour effectuées par l'autre . Les User Instances est obsolète et je préfère fortement attacher correctement une base de données à l'instance.

Dans SQL Server 2012, vous pouvez télécharger le nouveau runtime SqlLocalDb (vous voulez le fichier x86 ou x64 SqlLocalDB.MSI à partir d'ici), ce qui rend ce processus beaucoup plus facile, car il s'agit d'un moteur SQL Server à la demande sans maintenance. Cependant, notez que votre base de données sera mise à niveau vers le nouveau format de fichier 11.0, ce qui signifie que vous ne pourrez pas détacher/attacher ou sauvegarder/restaurer vers une version plus ancienne (2008, 2008 R2, etc.). J'ai ajouté de nombreuses techniques de dépannage pour les nouveaux utilisateurs commençant par SqlLocalDb ici.