标题 | .net 通过后台js上传表数据 |
范文 | Upload.aspx: <%@ LANGUAGE='JAVASCRIPT' %> <!-- #include file = "../adojvs.inc"--> <!-- #include file = "../conn.inc"--> <% // 执行SQL语句 //2012-12-6 Gu Laicheng function RunSQL(MySQL) { var ret=""; var rs1 = Server.CreateObject("ADODB.Recordset"); rs1.CursorType = adOpenKeyset; rs1.LockType = adLockBatchOptimistic; // Response.Write("<br/>" + MySQL + ""); try { rs1.Open(MySQL,conn); } catch (ex) { var ErrStr,ErrStr0,ErrStr1="==>"+new Date()+"<br/>"; ErrStr0 = "Error:"+ex+"<br/>"+MySQL; var o = conn.Errors; for (var i=0;i<o.Count;i++) { ErrStr1 += o.Item(i).Number + ":" + o.Item(i).Description+", "+o.Item(i).SQLState+";"+o.Item(i).Source ; } ErrStr =ErrStr0+"<br/>"+ErrStr1; o.Clear(); Response.Write("<br/>" + ErrStr + ""); } if(rs1.State==1) { if (!(rs1.BOF && rs1.EOF)) { ret = rs1(0).value; } rs1.Close(); } return ret; } var Class = { create: function() { return function(n) { this.initialize.apply(this, arguments); } } } var TABLE = Class.create(); TABLE.prototype = { initialize:function(TabName){ this.TabName = TabName; this.Fields=[]; this.FieldCount = 0; this.values=[]; this.types=[]; this.MySQL=""; this.flag; }, F:function(s) { var a=s.split(","); for(var i=1;i<a.length;i++) { this.Fields[i-1]=a[i]; } this.FieldCount = a.length-1; }, V:function(s) { var a=s.split(","); this.flag=a[0]; for(var i=1;i<a.length;i++) { this.values[i-1]=a[i]; } if(a[0]==1) this.Replace(); if(a[0]==2) this.Insert(); if(a[0]==3) this.Update(); if(a[0]==4) this.Delete(); }, Replace:function() { if(this.values[0]==0) this.Insert(); else this.Update(); }, Insert:function() { var fs="",vs=""; var j=0; //i,j可能并不同步,有些列值可能为空,表示不插入其值,要保证sql的语法正确 for(var i=0;i<this.FieldCount;i++) { if(this.values[i] == "NULL") continue; if(j == 0) { fs += this.Fields[i]; vs += "'"+this.values[i]+"'"; } else { fs += ","+this.Fields[i]; vs += ",'"+this.values[i]+"'"; } j++; } this.MySQL="insert into "+this.TabName+" ("+fs+") values ("+vs+")"; }, Update:function() { this.MySQL="update "+this.TabName+" set "; for(var i=1;i<this.FieldCount;i++) { if(this.values[i] == "NULL") { if(i != 1) this.MySQL += ","; this.MySQL += this.Fields[i]+"=null "; } else { if(i != 1) this.MySQL += ","; this.MySQL += this.Fields[i]+"='"+this.values[i]+"'"; } } this.MySQL += " where "+this.Fields[0]+"='"+this.values[0]+"'"; }, Delete:function() { this.MySQL="delete from "+this.TabName+" where "; var j=0; //i,j可能并不同步,有些列值可能为空,表示不以其为条件,要保证sql的语法正确 for(var i=0;i<this.FieldCount;i++) { if(this.values[i]=="") continue; if(this.values[i] == "NULL") { if(j != 0) this.MySQL += " and "; this.MySQL += this.Fields[i]+" is null "; } else { if(j != 0) this.MySQL += " and "; this.MySQL += this.Fields[i]+"='"+this.values[i]+"'"; } j++; } } }; var fso, ts, s; var ForReading = 1, ForWriting = 2; var name;// = "c:webyafulwisadtt.csv"; name = Server.MapPath("t.csv"); var fso = new ActiveXObject("Scripting.FileSystemObject"); if (fso.FileExists(name)) { Response.Write(" 文件 "+name+" 存在!"); ts = fso.OpenTextFile(name, ForReading, true); // ts.SkipLine(); var data=new TABLE(Request.QueryString("a")+""); s = ts.ReadLine(); data.F(s); Response.Write("<br/>"+data.FieldCount); Response.Write("<br/>" + s.replace(/,/g,"t") + ""); Response.Write("<br/>" + data.Fields + ""); while (!ts.AtEndOfStream) { s = ts.ReadLine(); // Response.Write("<br/>" + s.replace(/,/g,"t") + ""); data.V(s); Response.Write("<br/>" + data.MySQL + ""); RunSQL(data.MySQL); } ts.Close(); } else { Response.Write(" 文件 "+name+" 不存在,请核对后查询!"); } %> |
随便看 |
|
在线学习网范文大全提供好词好句、学习总结、工作总结、演讲稿等写作素材及范文模板,是学习及工作的有利工具。