Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : requete sql [ Base de données / Access ] (elnk)

mardi 27 novembre 2007 à 22:54:33 | requete sql

elnk

Bonsoir, j ai un probleme avec une requete INSERT INTO vers Access voici le code : OleDbConnection maconnect = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source='G:\\Mes applications\\VideoTech\\bdd users\\bdd_users1.mdb';Jet OLEDB:Database Password=gtklink"); try { maconnect.Open(); } catch (Exception xex) { Console.WriteLine("Erreur"); maconnect.Close(); return; } string strsqlAddUser = "INSERT INTO Users (nick,password,nom,prenom,id_rang) VALUES(monnick,monpassword,monmorandi,monprenom,2)"; OleDbCommand sqlAddUser = new OleDbCommand(strsqlAddUser, maconnect); sqlAddUser.ExecuteNonQuery(); L'erreur : "Erreur de syntaxe dans l'instruction INSERT INTO." L'erreur est peut etre tout simple mais je ne vois pas et j ai essayer avec et sont "'.. si qqun pouvait m aider ca serai sympas.

mercredi 28 novembre 2007 à 08:37:25 | Re : requete sql

SharpMao

Membre Club
Hello,

Premièrement, si monnick,monpassword,monmorandi,monprenom sont les valeurs que tu veux insérer et pas des variables :
string strsqlAddUser = "INSERT INTO Users (nick,password,nom,prenom,id_rang) VALUES('monnick','monpassword','monmorandi','monprenom',2)";
Si ça ne marche pas, essaie de prendre cette requête et de l'éxécuter directement dans Access.

Par contre, si monnick,monpassword,monmorandi,monprenom sont des variables de ton programme, je te conseil l'utilisation de requêtes paramétrées.


Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

mercredi 28 novembre 2007 à 08:39:44 | Re : requete sql

elnk

ok je vais essayer

mercredi 28 novembre 2007 à 09:13:49 | Re : requete sql

elnk

J ai essyer d executer cette requete sous access directement : INSERT INTO Users (nick,password,nom,prenom,id_rang) VALUES(monnick,monpassword,monmorandi,monprenom,2); mais elle ne me rempli pas les champs nick password nom prenom id_rang avec ceux des values, ca m affiche une boite de dialogue avec comme text mes values et je dois saisir leur donnée ensuite ca range les données dans les champs... je ne comprends pas trop :/

mercredi 28 novembre 2007 à 09:29:24 | Re : requete sql

SharpMao

Membre Club
C'est parce qu'il faut entourer tes valeurs chaînes de charactères par le caratère '

INSERT INTO Users (nick,password,nom,prenom,id_rang) VALUES('monnick','monpassword','monmorandi','monprenom',2)

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

mercredi 28 novembre 2007 à 09:50:25 | Re : requete sql

elnk

j ai ressayer avec les parametres : OleDbConnection maconnect = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source='G:\\Mes applications\\VideoTech\\bdd users\\bdd_users1.mdb';Jet OLEDB:Database Password=password"); try { maconnect.Open(); } catch (Exception xex) { MessageBox.Show("Error"); maconnect.Close(); return; } //string strsqlAddUser = "INSERT INTO Users(nick,[password],nom,prenom,id_rang) VALUES(monnick,monpassword,monmorandi,monprenom,2)"; //OleDbCommand sqlAddUser = new OleDbCommand(strsqlAddUser, maconnect); //sqlAddUser.ExecuteNonQuery(); SqlParameter paramNick = new SqlParameter("@Nick", SqlDbType.VarChar); paramNick.Value = "MonNick"; SqlParameter paramNom = new SqlParameter("@Nom", SqlDbType.VarChar); paramNom.Value = "MonNom"; SqlParameter paramPass = new SqlParameter("@Pass", SqlDbType.VarChar); paramPass.Value = "MonPass"; SqlParameter paramPren = new SqlParameter("@Pren", SqlDbType.VarChar); paramPren.Value = "MonPrenom"; SqlParameter paramIdR = new SqlParameter("@idRang", SqlDbType.Int); paramNick.Value = 2; string Sql = string.Format("INSERT INTO Users(nick,password,nom,prenom,id_rang) " + "VALUES({0},{1},{2},{3},{4})", paramNick.ParameterName, paramPass.ParameterName, paramNom.ParameterName, paramPren.ParameterName, paramIdR.ParameterName); OleDbCommand cmd = new OleDbCommand(Sql.ToString(),maconnect); cmd.Parameters.Add(paramNick); cmd.Parameters.Add(paramPass); cmd.Parameters.Add(paramNom); cmd.Parameters.Add(paramPren); cmd.Parameters.Add(paramIdR); cmd.ExecuteNonQuery(); mais j ai pas plus de succes il me surligne : cmd.Parameters.Add(paramNick); et affiche cette erreur : OleDbParameterCollection accepte uniquement des objets de type OleDbParameter non null, et non des objets SqlParameter.

mercredi 28 novembre 2007 à 09:58:41 | Re : requete sql

elnk

On me dit, que pour ma requete d'origine, c esta dire sans le parametres, qu il faut que je fasse un AddNew avant et un Update apres mais je ne vois pas trop ce ke je dois representer avec ca!

mercredi 28 novembre 2007 à 10:04:06 | Re : requete sql

SharpMao

Membre Club
Re,

L'exemple que je t'ai donné fait des requêtes paramétrées pour sqlServer, donc utilise des SQLParameter.
Si tu fait de l'OLEDB, utilise des OleDbParameter, comme il te le dit.

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

mercredi 28 novembre 2007 à 10:07:39 | Re : requete sql

elnk

oui merci je viens de m en apercevoir aussi je viens de corriger mais du coup j ai : OleDbParameter paramNick = new OleDbParameter("@Nick", SqlDbType.VarChar); paramNick.Value = "MonNick"; OleDbParameter paramNom = new OleDbParameter("@Nom", SqlDbType.VarChar); paramNom.Value = "MonNom"; OleDbParameter paramPass = new OleDbParameter("@Pass", SqlDbType.VarChar); paramPass.Value = "MonPass"; OleDbParameter paramPren = new OleDbParameter("@Pren", SqlDbType.VarChar); paramPren.Value = "MonPrenom"; OleDbParameter paramIdR = new OleDbParameter("@idRang", SqlDbType.Int); paramNick.Value = 2; string Sql = string.Format("INSERT INTO Users(nick,password,nom,prenom,id_rang) " + "VALUES({0},{1},{2},{3},{4})", paramNick.ParameterName, paramPass.ParameterName, paramNom.ParameterName, paramPren.ParameterName, paramIdR.ParameterName); OleDbCommand cmd = new OleDbCommand(Sql.ToString(),maconnect); cmd.Parameters.Add(paramNick); cmd.Parameters.Add(paramPass); cmd.Parameters.Add(paramNom); cmd.Parameters.Add(paramPren); cmd.Parameters.Add(paramIdR); cmd.ExecuteNonQuery(); et toujours l erreur de stintaxe dans le INSERT INTO apparement. "Erreur de syntaxe dans l'instruction INSERT INTO."

mercredi 28 novembre 2007 à 11:11:34 | Re : requete sql

SharpMao

Membre Club
Hello,

Désolé de revenir sur ça, mais est-ce que la requête fonctionne directement sous Access :

INSERT INTO Users (nick,password,nom,prenom,id_rang) VALUES ('monnick','monpassword','monmorandi','monprenom',2)

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)


1 2

Cette discussion est classé dans : insert, erreur, requete, into, maconnect


Répondre à ce message

Sujets en rapport avec ce message

requete insert mysql c# 2005 [ par dembum ] Voila je voudari savoir comment faire des insertion de ligne dans une base de données mysql avec visual studio 2005 en c#.Quelle provider faut il util Procédure import dans une dll avec visu de progression sur une progressbar [ par Arthenius ] Hello,j'ai un petit souci...j'ai fait une dll d'importation (je sais y a DTS pour ca...mais pour des raisons techniques c'est ma dll que je dois utili requete avec une comparaion de date [ par ratsimisampy ] bonjour, voila, j'ai uune requete simple qui selectionne les commandes émises depuis une date saisie par l'utilisateur: string req = "SELECT * FROM Insert into [ par mr_silva ] Bonjour ,D'après le compilateur,j'ai un petit probléme de syntaxe INSERT INTO.public bool AjoutPosition( string Date ,string Heure, string Coordonnees requete insert [ par raja29 ] Bonsoir je suis débutante en C#, j'ai une application à developper.ma question elle est plus sql que c#!! Je dois gerer les comptes des utilisateu probleme requete insert [ par mook5naz ] bonjour a tous,je lit un fichier .log.je dois ecrire chaque ligne lut dans une base sql.je rencontre un probleme lors de l'execution de cette requete. requete SQL dans un programme objet [ par Jojo092 ] Bonjour, j'ai un petit souci. J'aimerais faire une mise à jour d'une base access sur mon programme C#, ms il me met un message d'erreur qui est : "Err Erreur de syntax INSERT et UPDATE [ par Kr33per35 ] Bonjour,Je dois faire un programme qui catalogues les produits d'une entreprise et pour cela j'utilise une base de donnée access. J'arrive bien à récu erreur 501 [ par lassie14 ] bonjour,c'est la première fois que je poste ici j'espère ne pas me tromper ..donc mon probleme est que j'ai une fonction qui me permet de lister un do message d'erreur amélioré [ par klem39 ] Bonjours, je suis entrain de coder un programme, et mes messages d'erreur ne sont pas très estétique avec les MessageBox, j'aimerais savoir si quelqu'


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,577 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.