大家来帮忙了~~~
用C#连接ACCESS数据库里的表 有个数据库里有个自动编号的字段每会添加新行的时候 自动编号的字段总是NULL
怎么半
int cd=int.Parse(cid.Text);
int cou=int.Parse(count.Text);
string str=insert into e values ('"+cid.Text+"','"+data.Text+"','"+count.Text+"','"+type.Text+"')";
cmd=new OleDbCommand(str,con);
ad.InsertCommand=cmd;
DataRow row=table.NewRow();
row["CID"]=cd;
row["Data"]=data.Text;
row["Count"]=cou;
row["Type"]=type.Text;
table.Rows.Add(row);
ad.Update(se,"e");
se.AcceptChanges();
this.dataGrid1.DataSource=table;
自动编号的字段是TID
大家帮帮忙了 --------------------编程问答-------------------- TID是自动编码,所以不需要你手动插入。
string str=insert into e values ('"+data.Text+"','"+count.Text+"','"+type.Text+"')";
--------------------编程问答-------------------- 插入时指定列名
string str=insert into e(Data,Count,Type) values ('"+data.Text+"','"+count.Text+"','"+type.Text+"')";
--------------------编程问答-------------------- 可是还不行 说是 insert into 语句 语法错误
谁能把完整的代码发上来 谢谢了饿 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 建议楼主使用带参数SQL语句,这样看起来易懂也安全同时TID是自动编码,所以不需要你手动插入
string strSql = "INSERT INTO e (Data,Count,Type) VALUES (@Data,@Count,@Type)";
OleDbCommand cmd=new OleDbCommand();
cmd.Connection = con;
cmd.CommandText = strSql;
cmd.Paramters.AddWithValue("@Data",data.Text);
cmd.Paramters.AddWithValue("@Count",count.Text);
cmd.Paramters.AddWithValue("@Type",type.Text);
ad.InsertCommand=cmd;
......
补充:.NET技术 , ASP.NET