IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

MSSQL Server 2000: données perdues ?!


Sujet :

MS SQL Server

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 36
    Points : 38
    Points
    38
    Par défaut MSSQL Server 2000: données perdues ?!
    Bonjours ;
    j'ai posté mon prolème sur le forum C++ builder mais personne ne repond ; voila mon problème:

    J’ai un sérieux problème avec mon application C++builder6.0 et la base de données SQL Server 2000
    Il me semble que mon application ne valide pas les transactions sur la base de données SQL et ne déclenche aucune exception comme si les enregistrements sont écrits normalement sur la base.
    J’ai été surpris ! : quelques enregistrements ont été validés (mon programme imprime un état après chaque validation d’un enregistrement) et ne figurent pas sur la base et ce phénomène est aléatoire
    J’utilise ADO pour se connecter au serveur SQL et les fonction Edit(),Append(),Poste(), pour effectuer les transactions sur les tables ADO
    Mon serveur : SQL Server 2000 SP4, Windows Server 2003 Standard Edition,
    Poste Client : Windows XP Pro SP2. Type de connexion : Sécurité SQL (compte SQL).

    je pense qu'il y a un problème d'incompatibilité entre windows server2003 et SQL 2000

    Si quelqu’un peut m’orienter je serais très reconnaissant . Et merci d’avance.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 865
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 865
    Points : 53 018
    Points
    53 018
    Billets dans le blog
    6
    Par défaut
    ce n'est pas un problème de SQL Server. C'est un problème de style de codage. Les fonctions Edit(), Append(), Poste() propres aux objets table ne doivent pas être utilisées, pour la bonne et simple raison qu'un SGBDR C/S ne travaille pas en objet table mais en objet requête TAdoQuery.

    De plus piloter une transaction côté client est une hérésie qui à toutes les chances de se planter... La démonstration est là !

    Si vous voulez faire des transactions, travaillez en procédures stockées.

    Un SGBDR n'est pas un système de fichier et une table n'a rien à voir avec un "fichier" de même qu'une ligne n'est pas un "enregistrement".
    Si vous venez du monde des SGBD fichiers, abandonnez votre ancienne façon de faire et passez au client serveur.

    A +

  3. #3
    Rédacteur
    Avatar de WOLO Laurent
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mars 2003
    Messages
    2 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 741
    Points : 4 414
    Points
    4 414
    Par défaut
    En complement, n'oublier pas de prendre en compte la fonction

    dans vos procédures stockées si vous voulez remonter les exceptions
    Bonne chance.

  4. #4
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 33
    Points : 43
    Points
    43
    Par défaut SQL server Agent
    salut
    je pense qu'il faut demarrer le processus "SQL server Agent"
    voir le figure Ci-joint
    Images attachées Images attachées  

  5. #5
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 224
    Points : 19 567
    Points
    19 567
    Billets dans le blog
    25
    Par défaut
    Citation Envoyé par WOLO Laurent
    En complement, n'oublier pas de prendre en compte la fonction

    dans vos procédures stockées si vous voulez remonter les exceptions
    Bonne chance.
    Sauf erreur, nocount (sans espace !)

  6. #6
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 224
    Points : 19 567
    Points
    19 567
    Billets dans le blog
    25
    Par défaut
    Citation Envoyé par SAHARBI
    salut
    je pense qu'il faut demarrer le processus "SQL server Agent"
    voir le figure Ci-joint
    L'agent n'est utile que pour la partie administration. Pour vos transactions, vous n'avez besoin que de SQL Server

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 36
    Points : 38
    Points
    38
    Par défaut
    Merci pour vos réponses

    pour SQLPro:

    j'utilise les objets TADODataSet, et j'execute des requêtes en utilisant la propriété CommandText="select .....";
    ensuite je met ADODataSet->Open();
    ADODataSet->Edit()/Append();
    .............................;
    .............................;
    ADODataSet->Poste();

    je crois que TADODataSet jou le rôle d'une requête ici?

    Merci d'avance pour vos conseilles

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 865
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 865
    Points : 53 018
    Points
    53 018
    Billets dans le blog
    6
    Par défaut
    encore une fois non !
    Si vous voulez faire une insertion il faut utiliser une requête INSERT INTO, etc....

    Vous confondez la gestion de fichiers avec une bases de données relationnelles client/serveur.

    Il serait temps de vous former !

    A +

Discussions similaires

  1. [MSSQL server 2000]Somme d'heures.
    Par guigui69 dans le forum Développement
    Réponses: 8
    Dernier message: 04/05/2011, 14h52
  2. Probleme de connexion java & mssql server 2000
    Par rades2006 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 22/01/2008, 13h40
  3. Probleme de connexion java & mssql server 2000
    Par rades2006 dans le forum JDBC
    Réponses: 3
    Dernier message: 22/01/2008, 12h31
  4. [MSSQL server 2000] stored procedure a demarre toute seule
    Par NorthernLights dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 18/08/2006, 11h10
  5. [SQL-Server] Connexion Php vers MSSQL Server 2000
    Par Andry dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 19/07/2006, 13h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo