STRING stra=textbox1.textstring[] Array1=stra.split(" "); int a=Array1.length; int b=a/4; int i=0; if (a%4==0) { while (i<a ) { string sql="insert into table(a,b,c,d) values (Array1[i],Array1[i+1],Array1[i+2],Array1[i+3] )" cmd.excutenonquery(sql,con) i=i+4 } }
用存儲過程吧~sql語句效率低,一個語句就是一個事務,循環那麼多次把資料庫累死,還可能會被注入~~
STRING stra=textbox1.text string[] Array1=stra.split(" "); int a=Array1.length; int i=0; if (a%4==0) { while (i<a ) { string sql="insert into table(a,b,c,d) values ('"+Array1[i].replace("'","''")+"','"+Array1[i+1].replace("'","''")+"','"+Array1[i+2].replace("'","''")+"','"+Array1[i+3].replace("'","''")+"' )" cmd.excutenonquery(sql,con) i=i+4 } else { response.write("数字个数请输入4的倍数") } }
5,6,7,8
可以用split来折分字符进行数据插入操作
多行间用\r\n拆分多条记录,字段间用逗号拆分字段,你可以试下
string stra = "lblNamChn" + k.ToString;
string strb = "txtEmpno" + k.ToString;
TextBox TextBoxa = (TextBox)this.FindControl(stra);
TextBox TextBoxb = (TextBox)this.FindControl(strb);
if (!string.IsNullOrEmpty(TextBoxa.Text.Trim)) {
strSQL = "Insert Into TUTOR(tutor_type,tutor_emp_id,tutor_name,crs_num,cls_num,crt_user,crt_datetime) Values(";
strSQL += "'" + ReplaceString(SelTutorType.SelectedValue) + "',";
strSQL += "'" + ReplaceString(TextBoxb.Text.Trim) + "',";
strSQL += "'" + ReplaceString(TextBoxa.Text.Trim) + "',";
strSQL += "'" + ReplaceString(lstCrsNum.SelectedValue) + "',";
strSQL += "'" + ReplaceString(txtClsnum.Text.Trim) + "',";
strSQL += "'" + Session("UserID") + "',";
strSQL += "'" + Strings.Format(Now(), "yyyy/MM/dd HH:mm:ss") + "')";
clsDbProcess.ExecuteSQL(Session("Server"), Session("Database"), strSQL);
}
}
STRING stra=textbox1.textstring[] Array1=stra.split(" ");
int a=Array1.length;
int b=a/4;
int i=0;
if (a%4==0)
{
while (i<a )
{
string sql="insert into table(a,b,c,d) values (Array1[i],Array1[i+1],Array1[i+2],Array1[i+3] )" cmd.excutenonquery(sql,con)
i=i+4
}
}
STRING stra=textbox1.text
string[] Array1=stra.split(" ");
int a=Array1.length;
int i=0;
if (a%4==0)
{
while (i<a )
{
string sql="insert into table(a,b,c,d) values ('"+Array1[i].replace("'","''")+"','"+Array1[i+1].replace("'","''")+"','"+Array1[i+2].replace("'","''")+"','"+Array1[i+3].replace("'","''")+"' )"
cmd.excutenonquery(sql,con)
i=i+4
}
else
{
response.write("数字个数请输入4的倍数")
}
}
用 split() 很简单的
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("添加成功");
}连一条都插入不进去了,哪里写错了呀。????