|
Trouver une ressource
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)
Informations & options pour cette discussion
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
|
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
|
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
|
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
|
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)
|
|
|
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'
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|