输入形如:
11 22 33 44
22 33 44 55
33 44 55 66
的时候。 //SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["connstr"]);
//conn.Open();
//string a = this.TextBox1.Text;
//string[] str = a.Split(' ');
//string a1 = str[0];
//string a2 = str[1];
//string a3 = str[2];
//string a4 = str[3];
//string strsql = "insert into gys(gysname,gysqq,gyshttp,gystel) values('"+a1+"','"+a2+"','"+a3+"','"+a4+"')";
//SqlCommand comm = new SqlCommand(strsql,conn);
//comm.ExecuteNonQuery();
//Response.Write("添加成功"); 只能把第一条写入到数据库。
而下面的:
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["connstr"]);
conn.Open();
string a = this.TextBox1.Text;
string[] str = a.Split(' ');
string a1 = str[0];
string a2 = str[1];
string a3 = str[2];
string a4 = str[3]; for(int i=0;i <TextBox1.Rows;i++)
{
string strsql = "insert into gys(gysname,gysqq,gyshttp,gystel) values('"+a1+"','"+a2+"','"+a3+"','"+a4+"')";
SqlCommand comm = new SqlCommand(strsql,conn);
comm.ExecuteNonQuery();
Response.Write("添加成功");
} 连一条都插入不进去了,哪里写错了呀。????
11 22 33 44
22 33 44 55
33 44 55 66
的时候。 //SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["connstr"]);
//conn.Open();
//string a = this.TextBox1.Text;
//string[] str = a.Split(' ');
//string a1 = str[0];
//string a2 = str[1];
//string a3 = str[2];
//string a4 = str[3];
//string strsql = "insert into gys(gysname,gysqq,gyshttp,gystel) values('"+a1+"','"+a2+"','"+a3+"','"+a4+"')";
//SqlCommand comm = new SqlCommand(strsql,conn);
//comm.ExecuteNonQuery();
//Response.Write("添加成功"); 只能把第一条写入到数据库。
而下面的:
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["connstr"]);
conn.Open();
string a = this.TextBox1.Text;
string[] str = a.Split(' ');
string a1 = str[0];
string a2 = str[1];
string a3 = str[2];
string a4 = str[3]; for(int i=0;i <TextBox1.Rows;i++)
{
string strsql = "insert into gys(gysname,gysqq,gyshttp,gystel) values('"+a1+"','"+a2+"','"+a3+"','"+a4+"')";
SqlCommand comm = new SqlCommand(strsql,conn);
comm.ExecuteNonQuery();
Response.Write("添加成功");
} 连一条都插入不进去了,哪里写错了呀。????
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["connstr"]); string strsql = string.Empty;
string a = this.TextBox1.Text;
string[] strs = a.Split('\r');
foreach(string s in strs)
{
string[] str = a.Split(' ');
string a1 = str[0];
string a2 = str[1];
string a3 = str[2];
string a4 = str[3];
strsql += "insert into gys(gysname,gysqq,gyshttp,gystel) values('"+a1+"','"+a2+"','"+a3+"','"+a4+"');";
}
SqlCommand comm = new SqlCommand(strsql,conn);
conn.Open();
comm.ExecuteNonQuery();
conn.Close();
Response.Write("添加成功");
}
請問SQL 2005里一次插入多條語句能直接這樣寫嗎
insert into ……
insert into ……
insert into ……
using System.Text;StringBuilder sb = new StringBuilder();
sb.Append("insert into gys(gysname,gysqq,gyshttp,gystel)");
sb.Append("select '"+a1+"','"+a2+"','"+a3+"','"+a4+"');
foreach(條件)//條件自己想
{
sb.Append("union all")
sb.Append("select '"+a1+"','"+a2+"','"+a3+"','"+a4+"'");
}
string stringSQL = sb.ToString()
//略
如果是Oracleusing System.Text;StringBuilder sb = new StringBuilder();
sb.Append("begin");
foreach(條件)
{
sb.Append("insert into gys(gysname,gysqq,gyshttp,gystel) values('"+a1+"','"+a2+"','"+a3+"','"+a4+"');")//注意有分號的.
}
sb.Append("end;");//注意有分號的
string stringSQL = sb.ToString()
//略
上面我的方法有点错误foreach中
string[] str = a.Split(' '); ===> string[] str = s.Split(' ');