none
create sqlExpress 2008 data RRS feed

  • Question

  • Bonjour a tous

    Voila! J'essaie toujours de comprendre pourquois ca arrive mais je trouve pas.

    Je Crer la base de données une fois mais apres impossible

    J'utilise ceci pour Creer une base de données en c# mais quelque soit la facon de faire j'obtient toujour la meme erreur La Base données existe déja. changer le nom et recommencer

    string m_databaseFilename = "aspnetContactsDB";
     string m_basePath = Server.MapPath(@"App_data\\");
    if (File.Exists(Server.MapPath(@"App_data\\aspnetContactsDB.mdf")).Equals(false))
    {
    using (var connection = new SqlConnection("Data Source=.\\sqlexpress;Initial Catalog=master;Integrated Security=true;User Instance=True;"))
    {
    connection.Open();
    using (var command = connection.CreateCommand())
    {
    command.CommandText = "CREATE DATABASE " + m_databaseFilename + " ON PRIMARY (NAME=" + m_databaseFilename + ", FILENAME='" + m_basePath + m_databaseFilename + ".mdf')";
    command.ExecuteNonQuery();
    command.Dispose();
    }
    connection.Close();
    connection.Dispose();
    } 
    }
    else
    { 
    return;
    }

    Si kkun a une idee la dessus j'apprecirais

    Merci


    BigDan
    lundi 21 mars 2011 04:21

Réponses

  • Bonjour sebastien et merci

    mais ca je savait deja mais la base et son contenue on deja ete supprimer du disque dur

    La seule facon que j'ai trouve est de supprimer le repertoire de SqlExpress dans

    C:\Documents and Settings\Votre Nom\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\ 

    et tout redevien normal pour moi et ainsi je peut recreer la base de données .

    Mais je trouve pas normal d'être oblige de fair de cette facon.

    et le dropdatabase fonctionne pas dans ce cas si

    Merci encore

    Je viens tous juste de trouver d'ou venait le problême.

    Mauvaise utilisation d'une ligne de code dans mon dropDatabase

     J'utilisait ceci

    private void DropTheDataBase()
    {
    string m_databaseFilename = "MyData.mdf";
    string m_basePath = Server.MapPath(@"App_data\\");
    conn = new SqlConnection(ConnectionString);
    // Open the connection
    if (conn.State != ConnectionState.Open)
    {
    conn.Open();
    }
    string sql = "Drop Database " + m_databaseFilename + ".mdf";
    cmd = new SqlCommand(sql, conn);
    cmd.ExecuteNonQuery();
    conn.Close();
    cmd.Dispose(); 
    }

    et il fallait le faire ainsi

    private void DropTheDataBase()
    {
    string m_databaseFilename = "MyData";
    string m_basePath = Server.MapPath(@"App_data\\");
    conn = new SqlConnection(ConnectionString);
    // Open the connection
    if (conn.State != ConnectionState.Open)
    {
    conn.Open();
    }
    string sql = "Drop Database " + m_databaseFilename;
    cmd = new SqlCommand(sql, conn);
    cmd.ExecuteNonQuery();
    conn.Close();
    cmd.Dispose(); 
    }

     

    Merci mais maintenant ce probleme est réglé et

    merci encore

     

     

    BigDan

     


    BigDan
    • Marqué comme réponse DanielMorais mercredi 23 mars 2011 17:08
    lundi 21 mars 2011 17:19

Toutes les réponses

  • Bonjour a tous

    Voila! J'essaie toujours de comprendre pourquois ca arrive mais je trouve pas.

    Je Crer la base de données une fois mais apres impossible

    J'utilise ceci pour Creer une base de données en c# mais quelque soit la facon de faire j'obtient toujour la meme erreur La Base données existe déja. changer le nom et recommencer

    string m_databaseFilename = "aspnetContactsDB";
    
     string m_basePath = Server.MapPath(@"App_data\\");
    
    if (File.Exists(Server.MapPath(@"App_data\\aspnetContactsDB.mdf")).Equals(false))
    
    {
    
    using (var connection = new SqlConnection("Data Source=.\\sqlexpress;Initial Catalog=master;Integrated Security=true;User Instance=True;"))
    
    {
    
    connection.Open();
    
    using (var command = connection.CreateCommand())
    
    {
    
    command.CommandText = "CREATE DATABASE " + m_databaseFilename + " ON PRIMARY (NAME=" + m_databaseFilename + ", FILENAME='" + m_basePath + m_databaseFilename + ".mdf')";
    
    command.ExecuteNonQuery();
    
    command.Dispose();
    
    }
    
    connection.Close();
    
    connection.Dispose();
    
    } 
    
    }
    
    else
    
    { 
    
    return;
    
    }

     

    Si kkun a une idee la dessus j'apprecirais

    Merci


    BigDan


     retour sur la question si dessus

    Je veux juste creer une base de données vides j'ai déja le code pour creer les table et son contenur 


    BigDan
    lundi 21 mars 2011 04:51
  • Bonjour,

     

    Sauf que si la base existe déjà il faut la supprimer !
    et donc faire un DROP DATABASE !


    Sebastien FERRAND MVP C# (2004-2009) http://www.sfphotographie.fr
    lundi 21 mars 2011 09:11
  • Bonjour sebastien et merci

    mais ca je savait deja mais la base et son contenue on deja ete supprimer du disque dur

    La seule facon que j'ai trouve est de supprimer le repertoire de SqlExpress dans

    C:\Documents and Settings\Votre Nom\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\ 

    et tout redevien normal pour moi et ainsi je peut recreer la base de données .

    Mais je trouve pas normal d'être oblige de fair de cette facon.

    et le dropdatabase fonctionne pas dans ce cas si

    Merci encore


    BigDan
    lundi 21 mars 2011 16:49
  • Bonjour sebastien et merci

    mais ca je savait deja mais la base et son contenue on deja ete supprimer du disque dur

    La seule facon que j'ai trouve est de supprimer le repertoire de SqlExpress dans

    C:\Documents and Settings\Votre Nom\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\ 

    et tout redevien normal pour moi et ainsi je peut recreer la base de données .

    Mais je trouve pas normal d'être oblige de fair de cette facon.

    et le dropdatabase fonctionne pas dans ce cas si

    Merci encore

    Je viens tous juste de trouver d'ou venait le problême.

    Mauvaise utilisation d'une ligne de code dans mon dropDatabase

     J'utilisait ceci

    private void DropTheDataBase()
    {
    string m_databaseFilename = "MyData.mdf";
    string m_basePath = Server.MapPath(@"App_data\\");
    conn = new SqlConnection(ConnectionString);
    // Open the connection
    if (conn.State != ConnectionState.Open)
    {
    conn.Open();
    }
    string sql = "Drop Database " + m_databaseFilename + ".mdf";
    cmd = new SqlCommand(sql, conn);
    cmd.ExecuteNonQuery();
    conn.Close();
    cmd.Dispose(); 
    }

    et il fallait le faire ainsi

    private void DropTheDataBase()
    {
    string m_databaseFilename = "MyData";
    string m_basePath = Server.MapPath(@"App_data\\");
    conn = new SqlConnection(ConnectionString);
    // Open the connection
    if (conn.State != ConnectionState.Open)
    {
    conn.Open();
    }
    string sql = "Drop Database " + m_databaseFilename;
    cmd = new SqlCommand(sql, conn);
    cmd.ExecuteNonQuery();
    conn.Close();
    cmd.Dispose(); 
    }

     

    Merci mais maintenant ce probleme est réglé et

    merci encore

     

     

    BigDan

     


    BigDan
    • Marqué comme réponse DanielMorais mercredi 23 mars 2011 17:08
    lundi 21 mars 2011 17:19