Login mot de passe
Erreur MS SQL [forum - Accès natifs]

Parcourir ce sujet :   1 Utilisateur(s) anonymes





Erreur MS SQL
Nouveau
Inscrit:
2006/8/1 20:23
Messages: 4
Hors Ligne
Bonjour,

lorsque j'effectue la requete suivante:

Resultat est un entier


I_tb_storesvr:m_NumCommande=SAI_NumCommande..Valeur
resultat=I_tb_storesvr:SQLInsert()

SI PAS resultat ALORS
Erreur(I_tb_storesvr:ErreurSQL)
FIN


J'ai l'erreur suivante qui apparaît:

ERREUR MSSQL: 0 Table: tb_storesvr / Impossible d'insérer une valeur dans la colonne identité de la table'tb_storesvr' quand IDENTITIY_INSERT est défini à OFF.


Merci pour votre aide

Posté le : 2006/8/3 19:49
Transférer la contribution vers d'autres applications Transférer


Anonyme
Re: Erreur MS SQL
Guest_Anonyme
je dirais que c'est un autoincrement et qu'on n'affecte pas une valeur autoincrement, on laisse faire le sgbd

Posté le : 2006/8/3 20:20
Transférer la contribution vers d'autres applications Transférer


Re: Erreur MS SQL
SQLManagerX Team
Inscrit:
2004/7/1 12:49
De Grenoble (38)
Messages: 2149
Hors Ligne
Bonjour,

en fait cela veut dire que la pertie autIncrement pour cette table est desactivee :

Citation :


SET IDENTITY_INSERT nomTable ON / OFF
Active, désactive l'insertion automatique de colonne auto incrémentées (identity) dans la table spécifiée.

Exemple : insertion de lignes dont la clef est spécifiée dans une table données pourvue d'un auto incrément :

CREATE TABLE T_CLIENT (CLI_ID INTEGER IDENTITY NOT NULL PRIMARY KEY, CLI_NOM VARCHAR(32))

SET IDENTITY_INSERT T_CLIENT ON

INSERT INTO T_CLIENT (CLI_ID, CLI_NOM) VALUES (325, 'DUPONT') INSERT INTO T_CLIENT (CLI_ID, CLI_NOM) VALUES (987, 'MARTIN')

SET IDENTITY_INSERT T_CLIENT OFF
INSERT INTO T_CLIENT (CLI_ID, CLI_NOM) VALUES (512, 'LEVY') => Serveur: Msg 544, Niveau 16, État 1, Ligne 1 Impossible d'insérer une valeur explicite dans la colonne identité de la table 'T_CLIENT' quand IDENTITY_INSERT est défini à OFF.


donc vous devez reactive les autoIncrement sur cette table avec la commande:

SET IDENTITY_INSERT T_CLIENT ON


normalement ensuite cela fonctionnera correctement. je pense qu'il faut le faire une fois uniquement. ensuite tester avec un arret du serveur et un redemarrage pour voir si cela doit se faire une fois au nieau du create table

@+

Posté le : 2006/8/3 20:55
_________________
----------
Firetox
8 rue Georges Méliès
38130 ECHIROLLES
..............................
http://emidev.fr
http://www.teecod.fr/web/Informatique/accueil
Transférer la contribution vers d'autres applications Transférer


Re: Erreur MS SQL
SQLManagerX Team
Inscrit:
2004/7/1 12:49
De Grenoble (38)
Messages: 2149
Hors Ligne
deuxieme reponse possible

visiblement le insert essaye de forcer l'autoIncrement
intercepter la requete pour voir si l'autoIncrmeent est tranmis par SQLManagerX

si c'est le cas alors ca veut dire que SQLManagerX ne detecte pas la colonne comme autoIncrment. si vous avez le data center que dit l'onglet structure

Posté le : 2006/8/3 20:58
_________________
----------
Firetox
8 rue Georges Méliès
38130 ECHIROLLES
..............................
http://emidev.fr
http://www.teecod.fr/web/Informatique/accueil
Transférer la contribution vers d'autres applications Transférer


Re: Erreur MS SQL
SQLManagerX Team
Inscrit:
2004/7/1 12:49
De Grenoble (38)
Messages: 2149
Hors Ligne
oki j'ai compris

dans msSQL4wd il doit y avoir un probleme avec les autoIncrements en fait SQLManagerX ne detecte pas votre colonne comme autoIncrement

donc pour l'instant
dans la declaration de votre objet I_tb_storesvr

// apres la ligne

I_tb_storesvr est un ........
I_tb_storesvr:SetAutoIncrement("nom la colonne autoIncrement")

demain je me penche la dessus. mais ce code permet de respecifier a SQLManagerX les autoIncrment s'il n'est pas capable de le voir depuis la base

Posté le : 2006/8/3 21:12
_________________
----------
Firetox
8 rue Georges Méliès
38130 ECHIROLLES
..............................
http://emidev.fr
http://www.teecod.fr/web/Informatique/accueil
Transférer la contribution vers d'autres applications Transférer


Re: Erreur MS SQL
Nouveau
Inscrit:
2006/8/1 20:23
Messages: 4
Hors Ligne
Merci pour ton aide. Effectivement de cette manière cela fonctionne...Pourrais-tu stp m'informer lorsque tu auras effectuer la modif dans la classe...

MERCI ENCORE POUR TON AIDE

Posté le : 2006/8/4 7:45
Transférer la contribution vers d'autres applications Transférer


Re: Erreur MS SQL
SQLManagerX Team
Inscrit:
2004/7/1 12:49
De Grenoble (38)
Messages: 2149
Hors Ligne
Bonjour,

voici le probleme que je rencontre apres mes tests. j'ai bien une requete me permettant de savoir si la colonne est autoIncrement mais cette requete ne fonctionne que sur SQLserver 2005.

visiblement la structure des tables systemes a changée. donc il faut que je fasse quelques recherches pour trouver la bonne requete qui fonctionnerait sur toutes les version de SQLServer

a suivre

Posté le : 2006/8/8 12:34
_________________
----------
Firetox
8 rue Georges Méliès
38130 ECHIROLLES
..............................
http://emidev.fr
http://www.teecod.fr/web/Informatique/accueil
Transférer la contribution vers d'autres applications Transférer



 Haut   Précédent   Suivant




[Recherche avancée]