代码如下:
//cmd.CommandText = "insert into t_person(name,age) values(@name,@age)";
string line = null;
while ((line = sreader.ReadLine()) != null)
{
string[] strs = line.Split('|');
string name = strs[0];
int age = Convert.ToInt32(strs[1]);
//MessageBox.Show(name + " " + age);//name age是正确得到的
// cmd.Parameters.Clear();
// cmd.Parameters.Add(new SqlParameter("name", name));
// cmd.Parameters.Add(new SqlParameter("age", age));
cmd.CommandText = "Insert into t_person (name,age) values ('" + name + "','" + age + "')";
//以上两种插入方式都失败
cmd.ExecuteNonQuery();
}
连接数据库是没有问题的
语句应该没有问题 表名段号什么的我也检查过了
除此之外,还有什么问题会导致插入失败呢?
实在是找不出来了 求解!!!!!
//cmd.CommandText = "insert into t_person(name,age) values(@name,@age)";
string line = null;
while ((line = sreader.ReadLine()) != null)
{
string[] strs = line.Split('|');
string name = strs[0];
int age = Convert.ToInt32(strs[1]);
//MessageBox.Show(name + " " + age);//name age是正确得到的
// cmd.Parameters.Clear();
// cmd.Parameters.Add(new SqlParameter("name", name));
// cmd.Parameters.Add(new SqlParameter("age", age));
cmd.CommandText = "Insert into t_person (name,age) values ('" + name + "','" + age + "')";
//以上两种插入方式都失败
cmd.ExecuteNonQuery();
}
连接数据库是没有问题的
语句应该没有问题 表名段号什么的我也检查过了
除此之外,还有什么问题会导致插入失败呢?
实在是找不出来了 求解!!!!!
string line = null;
while ((line = sreader.ReadLine()) != null)
{
string[] strs = line.Split('|');
string name = strs[0];
string age = strs[1]; //MessageBox.Show(name + " " + age);//name age是正确得到的
// cmd.Parameters.Clear();
// cmd.Parameters.Add(new SqlParameter("name", name));
// cmd.Parameters.Add(new SqlParameter("age", age));
cmd.CommandText = "Insert into t_person (name,age) values ('" + name + "'," + age + ")";//以上两种插入方式都失败
cmd.ExecuteNonQuery();
}
age是整数型的
你的这行:cmd.CommandText = "Insert into t_person (name,age) values ('" + name + "','" + age + "')";
age是字符型的。
数据库中的age 类型可能是char而不是int的。
所以先改数据库里的字段类型吧。