sintax error in INSERT INTO statement

F

fanor

Hi guys,

I need your help,

I got the message "syntax error in INSERT INTO statement", the code
looks like this,

....................
.....................
//oleDbInsertCommand1 was generated by data //adapter
configuration wizar

this.oleDbInsertCommand1.CommandText = "INSERT INTO housecl(amount,
bedrooms, description, frequency, ini_date, levels, oven, pets, phone,
refrigerator, restrooms, rooms, size, type) VALUES (?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?)";
this.oleDbInsertCommand1.Connection = this.CMDBCon;
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("amount",
System.Data.OleDb.OleDbType.Currency, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(19)),
((System.Byte)(0)), "amount", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("bedrooms",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "bedrooms", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("description",
System.Data.OleDb.OleDbType.VarWChar, 0, "description"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("frequency",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "frequency", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("ini_date",
System.Data.OleDb.OleDbType.DBDate, 0, "ini_date"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("levels",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "levels", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("oven",
System.Data.OleDb.OleDbType.Boolean, 2, "oven"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("pets",
System.Data.OleDb.OleDbType.Boolean, 2, "pets"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("phone",
System.Data.OleDb.OleDbType.VarWChar, 12, "phone"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("refrigerator",
System.Data.OleDb.OleDbType.Boolean, 2, "refrigerator"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("restrooms",
System.Data.OleDb.OleDbType.Single, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(7)),
((System.Byte)(0)), "restrooms", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("rooms",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "rooms", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("size",
System.Data.OleDb.OleDbType.SmallInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(5)),
((System.Byte)(0)), "size", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("type",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "type", System.Data.DataRowVersion.Current, null));


..........
..........
DataRow dr;


dr=this.dsCM1.housecl.NewRow();
dr["phone"]="703-213-8765";
dr["type"]=0;
dr["levels"]=1;
dr["bedrooms"]=3;
dr["restrooms"]=1.5;
dr["size"]=150;
dr["frequency"]=1;
dr["ini_date"]= DateTime.Now;
dr["pets"]=true;
dr["amount"]=0;
dr["description"]="";
dr["refrigerator"]=true;
dr["oven"]=true;
dr["rooms"]=0;
this.dsCM1.housecl.Rows.Add(dr);
try
this.daHousecl.Update(this.dsCM1,"housecl");
.......
..........

THe data base is MS ACCESS and phone is the primary key field

Where is the error????
I'm missing something??
any help is really apreciated
 
M

Miha Markic [MVP C#]

Hi fanor,

At first glance, I would put size and type into square brackets since they
are probably reserved words.

--
Miha Markic [MVP C#] - RightHand .NET consulting & development
miha at rthand com
www.rthand.com

fanor said:
Hi guys,

I need your help,

I got the message "syntax error in INSERT INTO statement", the code
looks like this,

....................
.....................
//oleDbInsertCommand1 was generated by data //adapter
configuration wizar

this.oleDbInsertCommand1.CommandText = "INSERT INTO housecl(amount,
bedrooms, description, frequency, ini_date, levels, oven, pets, phone,
refrigerator, restrooms, rooms, size, type) VALUES (?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?)";
this.oleDbInsertCommand1.Connection = this.CMDBCon;
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("amount",
System.Data.OleDb.OleDbType.Currency, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(19)),
((System.Byte)(0)), "amount", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("bedrooms",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "bedrooms", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("description",
System.Data.OleDb.OleDbType.VarWChar, 0, "description"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("frequency",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "frequency", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("ini_date",
System.Data.OleDb.OleDbType.DBDate, 0, "ini_date"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("levels",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "levels", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("oven",
System.Data.OleDb.OleDbType.Boolean, 2, "oven"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("pets",
System.Data.OleDb.OleDbType.Boolean, 2, "pets"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("phone",
System.Data.OleDb.OleDbType.VarWChar, 12, "phone"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("refrigerator",
System.Data.OleDb.OleDbType.Boolean, 2, "refrigerator"));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("restrooms",
System.Data.OleDb.OleDbType.Single, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(7)),
((System.Byte)(0)), "restrooms", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("rooms",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "rooms", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("size",
System.Data.OleDb.OleDbType.SmallInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(5)),
((System.Byte)(0)), "size", System.Data.DataRowVersion.Current, null));
this.oleDbInsertCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("type",
System.Data.OleDb.OleDbType.UnsignedTinyInt, 0,
System.Data.ParameterDirection.Input, false, ((System.Byte)(3)),
((System.Byte)(0)), "type", System.Data.DataRowVersion.Current, null));


..........
..........
DataRow dr;


dr=this.dsCM1.housecl.NewRow();
dr["phone"]="703-213-8765";
dr["type"]=0;
dr["levels"]=1;
dr["bedrooms"]=3;
dr["restrooms"]=1.5;
dr["size"]=150;
dr["frequency"]=1;
dr["ini_date"]= DateTime.Now;
dr["pets"]=true;
dr["amount"]=0;
dr["description"]="";
dr["refrigerator"]=true;
dr["oven"]=true;
dr["rooms"]=0;
this.dsCM1.housecl.Rows.Add(dr);
try
this.daHousecl.Update(this.dsCM1,"housecl");
.......
..........

THe data base is MS ACCESS and phone is the primary key field

Where is the error????
I'm missing something??
any help is really apreciated
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top