c#导入数据sql执行成功但是数据库里就是没有生成数据,数据是从txt读出来的,@sno,@sname能取到值,数据库操作返回了1,我的操作是在visual studio 2008里进行的。
while ((line = reader.ReadLine())!= null)
{
string[] str = line.Split(',');
string sno = str[0];
string sname = str[1];
command.Parameters.Clear(); //每次插入都要clear参数
command.Parameters.Add(new SqlParameter("sno", sno));
command.Parameters.Add(new SqlParameter("sname", sname));
command.ExecuteNonQuery();
}如有需要我可以贴出全部代码
while ((line = reader.ReadLine())!= null)
{
string[] str = line.Split(',');
string sno = str[0];
string sname = str[1];
command.Parameters.Clear(); //每次插入都要clear参数
command.Parameters.Add(new SqlParameter("sno", sno));
command.Parameters.Add(new SqlParameter("sname", sname));
command.ExecuteNonQuery();
}如有需要我可以贴出全部代码
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Data.SqlClient;namespace 文件的导入
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void nybutton_Click(object sender, EventArgs e)
{
if(myimport.ShowDialog()!=DialogResult.OK){
return;
}
//使用FileStream读取文件
using (FileStream fileStream = File.OpenRead(myimport.FileName))
{
string path = AppDomain.CurrentDomain.BaseDirectory; using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\school.mdf;Integrated Security=True;User Instance=True"))
{
using (StreamReader reader = new StreamReader(fileStream))
{ conn.Open();
//向数据库插入数据
using (SqlCommand command = conn.CreateCommand())
{
command.CommandText = "insert into t_student(sno,sname) values(@Sno,@Sname)";
string line = null;
while ((line = reader.ReadLine())!= null)
{
string[] str = line.Split(',');
command.Parameters.Clear(); //每次插入都要清楚参数
command.Parameters.Add(new SqlParameter("Sno", str[0]));
command.Parameters.Add(new SqlParameter("Sname", str[1]));
//int tem=command.ExecuteNonQuery();
if (command.ExecuteNonQuery() > 0)
{
MessageBox.Show("1条数据保存成功");
}
//MessageBox.Show(command.ExecuteNonQuery().ToString());
}
// conn.Dispose();
}
}
}
}
// MessageBox.Show("数据保存成功");
}
}
}
conn.Open();加上这句。
是OK了,就是insert不OK。要说是不兼容的话会这样吗。晕死了。
command.Parameters.Add(new SqlParameter("Sno", str[0]));
command.Parameters.Add(new SqlParameter("Sname", str[1]));
command.Parameters.Add(new SqlParameter("@Sname", str[1]));
少了@
你还信誓旦旦地回答:“这里就一个数据库文件啊,我不可能连了其他的啊。”我真的服了你了。