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 :

Insert Auto increment C# SQL Server


Sujet :

MS SQL Server

  1. #1
    Membre averti
    �tudiant
    Inscrit en
    D�cembre 2008
    Messages
    45
    D�tails du profil
    Informations personnelles :
    �ge : 35

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : D�cembre 2008
    Messages : 45
    Par d�faut Insert Auto increment C# SQL Server
    bonjour,

    avant m�me de commencer .. je me suis pos� la question o� je devais placer ce topic. (c'est pas forc�ment le bon endroit :s )

    voil� pour en venir au probl�me.

    je suis sous visual studio en C# avec un base de donn�e SQL Server!

    je voudrai ins�rer des donn�es qui contiennent un code de format INT mais AUTO INCREMENT

    j'ai essay� avec :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    INSERT INTO probleme (codePB, libellePB, motifPB) 
    VALUES(x,'" + titre + "','" + motif );";
     
    INSERT INTO probleme (codePB, libellePB, motifPB) 
    VALUES(AUTO,'" + titre + "','" + motif );";
    mais rien � faire alors que lorsque je mets en dur la requ�te elle marche avec:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    INSERT INTO probleme (libellePB, motifPB) 
    VALUES('" + titre + "','" + motif );
    et il me met dans le champ codePB un numero automatiquement..

    je ne comprend pas.. pouvez vous m'aider

    merci d'avance

  2. #2
    Expert confirm�
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de donn�es
    Inscrit en
    Ao�t 2005
    Messages
    5 450
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 47
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Administrateur de base de donn�es
    Secteur : Distribution

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 5 450
    Par d�faut
    Bonsoir,

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    INSERT INTO probleme (codePB, libellePB, motifPB) 
    VALUES(x,'" + titre + "','" + motif );";
     
    INSERT INTO probleme (codePB, libellePB, motifPB) 
    VALUES(AUTO,'" + titre + "','" + motif );";
    Si vous avez d�fini la colonne codePB en tant que colonne incr�ment�e, vous ne pouvez pas forcer la valeur comme vous le faites dans votre code.

    Essayez ceci :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    INSERT INTO probleme (libellePB, motifPB) 
    VALUES('" + titre + "','" + motif + "');
    ++

  3. #3
    Membre averti
    �tudiant
    Inscrit en
    D�cembre 2008
    Messages
    45
    D�tails du profil
    Informations personnelles :
    �ge : 35

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : D�cembre 2008
    Messages : 45
    Par d�faut
    j'ai essay� de faire ce que vous m'avez dit et voil� le message d'erreur qui s'affiche lors de

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    SqlDataReader reader = command.ExecuteReader()
    Impossible d'ins�rer la valeur NULL dans la colonne 'codePB', table 'C:\...\MABASEST.MDF.dbo.t_probleme'. Cette colonne n'accepte pas les valeurs NULL. �chec de INSERT.
    L'instruction a �t� arr�t�e.



  4. #4
    Expert confirm�
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de donn�es
    Inscrit en
    Ao�t 2005
    Messages
    5 450
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 47
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Administrateur de base de donn�es
    Secteur : Distribution

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 5 450
    Par d�faut
    Votre colonne codePB ne doit pas �tre d�fini en tant que IDENTITY, c'est � dire qu'un num�ro incr�mentale est g�n�r� par SQL Server en automatique.

    Pour le v�rifier vous pouvez utiliser la vue syst�me sys.columns

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    SELECT 
     is_identity
    FROM sys.columns
    WHERE object_id = OBJECT_ID('dbo.probleme');
    ++

  5. #5
    Mod�rateur

    Homme Profil pro
    Administrateur de base de donn�es
    Inscrit en
    Janvier 2005
    Messages
    5 826
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : Administrateur de base de donn�es
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par d�faut
    Bonjour,

    Le mieux reste encore d'�crire une proc�dure stock�e qui fasse l'INSERT, vous ne faites alors que l'appeler, et SQL Server s'occupe du reste

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    CREATE PROCEDURE ps_probleme_ajouter
    	@_libellePB varchar(64)
    	, @_motifPB varchar(64)
    	, @_ID_probleme INT = NULL
    AS
    BEGIN
    	INSERT INTO dbo.probleme
    	(
    		libellePB
    		, motifPB
    	)
    	VALUES
    	(
    		@_libellePB
    		, @_motifPB
    	)
     
    	SELECT @_ID_probleme = SCOPE_IDENTITY()
    END
    Un bon exemple d'appel en C# avec un param�tre OUTPUT est donn� ici

    @++

Discussions similaires

  1. auto increment avec sql server
    Par bargougui86 dans le forum D�veloppement
    R�ponses: 2
    Dernier message: 17/03/2009, 17h30
  2. auto increment avec sql server comme avec mysql
    Par skystef dans le forum Acc�s aux donn�es
    R�ponses: 6
    Dernier message: 21/09/2007, 09h22
  3. auto incrementation en SQL server
    Par jefferson dans le forum MS SQL Server
    R�ponses: 4
    Dernier message: 23/12/2004, 12h10
  4. [debutant]Auto incrementation sur sql-server 2000
    Par syl2095 dans le forum MS SQL Server
    R�ponses: 9
    Dernier message: 18/11/2004, 19h00
  5. R�ponses: 2
    Dernier message: 05/01/2004, 12h23

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