Impossible d'insérer la valeur NULL dans la colonne, table, Colonne de ne pas autoriser les valeurs null... Mais cette colonne de Clé Primaire et a autoincrement propriété
J'ai publié une application web, elle est en cours d'exécution sur azure. L'application web du projet j'ai été le tester sur mon ordinateur (localhost) et ensuite sur l'application web. Quand je l'ai testé pour créer une nouvelle ligne de données (par exemple une nouvelle personne sur un PersonTable), Il a travaillé sur mon localhost, mais quand j'ai testé l'application web publié il met cette erreur:
Impossible d'insérer la valeur NULL dans la colonne 'ID_ANTEC_PERS", table
'Telejdb.dbo.ANTECEDENTES_PERSONALES'; la colonne n'autorise pas les valeurs null.
INSERTION échoue. La déclaration a été résilié.
La colonne (ID_ANTEC_PERS) est l'ID de la table(ANTECEDENTES_PERSONALES), mais j'ai mis à cette colonne de la propriété identity(1,1) sur mon serveur sql DB. Lorsque j'ai travaillé à ce projet dans mon ordinateur (localhost) je n'avais pas ce probleme, je pense que c'est parce que le projet savais que la séquence de l'incrément automatique de la propriété. Mais maintenant, une fois que l'application web est publié et exécuté sur azure, je voulais voir le code de mon projet mais j'ai réalisé il a été compilé .les fichiers dll Donc je ne peux pas modifier l'application web du projet. Toute Aide? Guide de l'? Des Suggestions? Je vais l'apprécier.
Merci d'avance
Vous devez vous connecter pour publier un commentaire.
Vérifier le champ à partir de votre tableau de conception puis de cocher la case à Cocher à partir de votre tableau de conception, elle permet alors d'insérer la valeur null dans la table
id est censé être une incrémentation de la valeur.
Vous devez définir ce paramètre, ou bien si vous avez une colonne non nullable, sans valeur par défaut, si vous ne fournissent aucune valeur d'erreur.
Pour configurer l'auto-incrémentation dans SQL Server Management Studio:
en local si vous n'obtenez pas ce problème signifie que vous devez mettre à jour les
Enfin j'ai pu le résoudre, le problème a été mon azure DB tables n'ont pas de propriété d'identité (incrémentation automatique) de sorte que le tableau avait un penalty mais il n'a pas leur propriété d'identité.
Ce qu'il se passe?
Quand j'ai essayé d'importer mon local DB (que tous ses tableaux ont la propriété d'identité) à azure DB je n'ai pas par une méthode inconnue (j'ai utilisé la tâche de SSMS: Tâche>Exporter des Données...), Cela pourrait importer toutes les tables, PK les Contraintes et toutes les données, mais il n'a pas importer toutes les propriétés de l'identité.
Comment résoudre ce problème?
Ce que j'ai fait pour le résoudre est de l'importation de ma base de données à nouveau, mais cette fois dans le bon sens: l'importation de mon local db azur db par un fichier bacpac (azure reconnaît ce type de fichier de sauvegarde).
En fait, avant j'ai utilisé la méthode pour importer mes DB que j'ai utilisé, j'ai essayé d'importer mes db par importation de fichier bacpac, mais je ne pouvais pas parce que j'ai utilisé SSMS 2014 et faire des recherches sur un autre stackoverflow questions, j'ai compris que je ne peux pas faire un fichier bacpac avec SSMS 2014 (j'ai eu un problème avec un Index cluster), mais je peux le faire avec SSMS 2016, donc je l'ai installé et j'ai enfin pu créer le fichier bacpac et puis j'ai pu importer mes azure db, et il avait la propriété d'identité