Est-il possible de mettre à niveau SqlServer localDB de 2012 à 2014?
Nous utilisons actuellement la version 11 de SQL Server 2012. J'ai besoin de passer à la version 12 de SQL Server 2014.
Je voudrais pouvoir le faire sans perdre mes tables et mes données.
J'ai installé un nouveau localDB mais je n'ai alors pas mes données. Il a également un autre nom et je ne peux pas vraiment changer les fichiers de configuration car c'est un projet d'équipe.
J'ai essayé d'utiliser l'outil de ligne de commande sqlLocalDB pour créer une version 2014 appelée v11.0 mais il l'a créée de toute façon dans l'ancienne version 2012.
C:\Program Files\Microsoft SQL Server\120\Tools\Binn>sqllocaldb create v11.0
LocalDB instance "v11.0" created with version 11.0.3000.0.
C:\Program Files\Microsoft SQL Server\120\Tools\Binn>sqllocaldb create v12.0
LocalDB instance "v12.0" created with version 12.0.2000.8.
C:\Program Files\Microsoft SQL Server\120\Tools\Binn>sqllocaldb create aaaaa
LocalDB instance "aaaaa" created with version 12.0.2000.8.
Pourquoi le nommer v11.0 changerait-il la version utilisée?
Comment puis-je mettre à niveau la v11.0 existante?
Comme indiqué dans ce lien de MSDN ( titre pas trop bien choisi ... ) la conversion devrait être déclenchée quelque peu en double-cliquant sur le fichier .mdf ... Cela ne s'est pas produit dans mon cas ( peut-être parce qu'il est nécessaire d'avoir le logiciel Sql Server Management Studio ou quelque chose de similaire pour que cela soit vrai).
Voici donc une procédure alternative:
Ouvrez l '"Explorateur de serveurs" dans Visual Studio
Cliquez sur l'icône "Se connecter à la base de données" dans le coin supérieur gauche
Choisissez "Microsoft SQL Server" dans la liste et appuyez sur Suivant
Écrivez ceci comme nom de serveur: (LocalDB)\MSSQLLocalDB
Sélectionnez "Joindre un fichier de base de données" dans les options ci-dessous et naviguez vers votre fichier .mdf
Continuez et cela devrait afficher une boîte de dialogue vous demandant de déclencher la conversion ou non
Et c'est tout. Pas très intuitif du tout, mais efficace. Je n'ai trouvé aucune documentation à ce sujet autre que le lien mentionné précédemment, toutes les autres étapes étaient une pure intuition mais ont fonctionné pour moi, j'espère pour vous aussi.
Pour cibler une version spécifique de LocalDb, utilisez 12.0 ou 11.0 comme paramètre. Par exemple:
sqllocaldb create "mydb" 12.0
La raison pour laquelle votre commande a échoué est que vous avez référencé la version de manière incorrecte. Ce n'est pas trop clair dans le -? Info.
L'utilisation de "v12.0" comme premier paramètre définit simplement le nom de l'instance. Si aucun deuxième paramètre de version n'est donné, la version par défaut est utilisée.
Il paraît que v11.0
est un nom spécial pour l'instance automatique de LocalDB 2012 . Et c'est strictement lié à cette version. Les versions 2014 et 2016 partagent le même nom MSSQLLocalDB
à cet effet.
Un moyen simple de mettre à niveau une instance SQL Server LocalDb consiste à supprimer le répertoire de données d'instance du %LocalAppData%\Microsoft\Microsoft SQL Server Local DB\Instances\
répertoire. Lors de la prochaine utilisation de l'instance, elle sera recréée avec la dernière version installée.