none
c# SQLCE Recuperation de donnée RRS feed

  • Question

  • Bonjour a tous

    j'utilise ceci pour recuperer les donnée de la bd

    contenant une sule table Ex. Post

     

     
    protected void LoadPostData()
    {
    SqlConnection cnn = new SqlConnection("data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\\MyData.mdf;User Instance=true");
    if (cnn.State == ConnectionState.Closed)
    {
    cnn.Open();
    }
    DTS = new DataSet();
    string sql = "Select * From Post";
    DTA = new SqlDataAdapter(sql, cnn);
    DTA.Fill(DTS, "Post");
    if (DTS.Tables.Count > 0)
    {
    this.myRepeater.DataSource = DTS;
    this.myRepeater.DataBind();
    }
    cnn.Close();
    }

    cela me donne tous les entrées

    Mais si je veus recuperer seulement la derniere entre 

    comment je dois proceder.

      La table contien ceci

    PostID;
    PostTitle;
    PostDate;
    PostText;

    Si KKun a une idee la desus.

     

    Merci

     

     

     


    BigDan
    vendredi 10 juin 2011 19:19

Réponses

  • Re Bonjour

    J'ai trouver le moyen de faire ce

    que je voulais et cela semble fonctionner pour l'instant.

    Le code utiliser est celui-ci.

    protected void LoadPostData()
    {
    SqlConnection cnn = new SqlConnection("data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\\MyData.mdf;User Instance=true");
    if (cnn.State == ConnectionState.Closed)
    {
    cnn.Open();
    }
    DTS = new DataSet();
    string sql = "Select * From Post ORDER BY PostId DESC";
    DTA = new SqlDataAdapter(sql, cnn);
    DTA.Fill(DTS, "Post");
    PagedDataSource objPds = new PagedDataSource();
    objPds.DataSource = DTS.Tables["Post"].DefaultView;
    objPds.AllowPaging = true;
    objPds.PageSize = 1; 
    if (DTS.Tables.Count > 0)
    {
    this.myRepeater.DataSource = objPds;
    this.myRepeater.DataBind();
    }
    cnn.Close();
    }


    J'obtien le dernier post entrer dans la bd en utilisant sont ID

    Merci quand meme.

    A plus


    BigDan
    • Marqué comme réponse DanielMorais vendredi 10 juin 2011 20:34
    vendredi 10 juin 2011 20:34

Toutes les réponses

  • Re Bonjour

    J'ai trouver le moyen de faire ce

    que je voulais et cela semble fonctionner pour l'instant.

    Le code utiliser est celui-ci.

    protected void LoadPostData()
    {
    SqlConnection cnn = new SqlConnection("data source=.\\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\\MyData.mdf;User Instance=true");
    if (cnn.State == ConnectionState.Closed)
    {
    cnn.Open();
    }
    DTS = new DataSet();
    string sql = "Select * From Post ORDER BY PostId DESC";
    DTA = new SqlDataAdapter(sql, cnn);
    DTA.Fill(DTS, "Post");
    PagedDataSource objPds = new PagedDataSource();
    objPds.DataSource = DTS.Tables["Post"].DefaultView;
    objPds.AllowPaging = true;
    objPds.PageSize = 1; 
    if (DTS.Tables.Count > 0)
    {
    this.myRepeater.DataSource = objPds;
    this.myRepeater.DataBind();
    }
    cnn.Close();
    }


    J'obtien le dernier post entrer dans la bd en utilisant sont ID

    Merci quand meme.

    A plus


    BigDan
    • Marqué comme réponse DanielMorais vendredi 10 juin 2011 20:34
    vendredi 10 juin 2011 20:34
  • Bonjour,

    On peut aussi utiliser SELECT TOP 1 * FROM Post ORDER BY PostId DESC (ajout du TOP 1) ce qui permet effectivement de récupérer seulement le dernier post depuis la base.

    La solution actuelle récupère tout de même tous les posts et utilise une "bidouille" pour n'afficher que la ligne qui nous intéresse.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
    samedi 11 juin 2011 16:53
    Modérateur
  • Merci Patrice

    J'Merichie de plus en plus avec ces code si j'aivait la posibiliter de pouvoir sauveguarder ces codes je me sentirais mieux et Merci  encore

     

    A plus


    BigDan
    dimanche 12 juin 2011 04:58