Transférer base SqlServer2000 vers SqlServer Ce

loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 6 mars 2008 à 17:27
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 - 7 mars 2008 à 11:27
Bonjour tout le monde,

Voila je souhaiterais transférer ma base sql Server 2000 vers Sql Server Ce.

J'ai trouvé par la méthode Pull qui me donne :
SqlCeConnection Cnx =

null;
SqlCeRemoteDataAccess Rda =
null;
SqlCeEngine Engine =
null;

string sConnexionLocale = @"Data Source=\My Documents\DistribInfo.sdf";

string sConnexionDistante = "Provider=sqloledb; Data Source=DIST-5B8D87E3A9;Initial Catalog=Distrib";

try{
   if (!File.Exists("/My Documents/DistribInfo.sdf"))
   {
         Engine =
new SqlCeEngine(sConnexionLocale);
         Engine.CreateDatabase();
         Engine.Dispose();
     }
   
else
     {
         Cnx =
new SqlCeConnection(sConnexionLocale);
         Cnx.Open();   
         SqlCeCommand Cmd = Cnx.CreateCommand();
         Cmd.CommandText = "DROP TABLE INTERVENTION";
         Cmd.ExecuteNonQuery();
   if (Cnx.State !ConnectionState.Closed) Cnx.Close();}    Rda

new SqlCeRemoteDataAccess();
   Rda.InternetLogin = "";
   Rda.InternetPassword = "";
   Rda.InternetUrl = "http://192.168.0.1/sqlce/sscesa20.dll";
   Rda.LocalConnectionString = sConnexionLocale;
   Rda.Pull("INTERVENTION","Select * from INTERVENTION",
   sConnexionDistante,
   RdaTrackOption.TrackingOnWithIndexes ,"ErrorTable");
}

catch (SqlCeException sqlex)
{

      foreach(SqlCeError sqlError
in sqlex.Errors)
      {
            MessageBox.Show(sqlError.Message + " " +sqlError.Source + " " +
            sqlError.NativeError + " " + sqlError.HResult);
            MessageBox.Show(sqlError.Message,"Erreur");
      }
}

catch (Exception ex){MessageBox.Show(ex.Message,"Erreur");}

finally{Rda.Dispose();}

Je travail sous Visual studio .Net 2003. Mon problème c'est qu'il me dit que 'File' de la ligne "if(!File.Exists(....))" n'existe pas plus précisément : "C:\Documents and Settings\Propriétaire\Mes documents\Visual Studio Projects\SuiviClient_DistribInfo_PDA\Index.cs(33): Le type ou le nom d'espace de noms 'File' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)".
Je vois pas comment faire??

Ensuite je me demandais s'il n'y avais pas un autre moyen de transférer les données d'une base Sql Server 2000 vers Sql server Ce?? (par exemple par le script .sql???......)

merci d'avance!!

3 réponses

Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
7 mars 2008 à 10:28
pas tout a fais le bon site pour le pb de c#

mais essaye cette syntaxe :

if (!System.IO.File.Exists(......))
{

}
pour ton transfert de bdd  => une sauvegarde sous 2000 pour une resto sous ce ???

<hr />Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
7 mars 2008 à 10:56
J'ai essayé ce que tu ma dit, mais ça n'as pas l'air de fonctionner car il passe pas du tout par le code.... Donc je me demande ou je dois le placer en fait ce code en faite??

Sinon j'ai pas compris ce que ta voulu dire par : "pour ton transfert de bdd  => une sauvegarde sous 2000 pour une resto sous ce ???" ??

Puis si par hasard, tu sais ou s'enregistre une base réaliser dans l'émulateur de pocket PC fournit avec VS.Net 2000 ça m'aiderais!!

merci d'avance!
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
7 mars 2008 à 11:27
pour ton code je ne vois pas trop ou se trouverait ta methode pull... ??
autre conseil met un arrowbase devant tes "" dans ton test comme ca pas de pbs avec les \ ou autre /
if (!System.IO.File.Exists(@"......"))

sinon repondu trop vite...pour le transfert de bdd

je te conseil de te pencher sur de la replication entre sql serveur et CE :

http://www.labo-dotnet.com/Videos/Mobile/Merge%20Replication%20SQL%20Server%20CE/0/1457.aspx

<hr />Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
0
Rejoignez-nous