Sql =""; ResultSet rs1=null,rs2=null; insSql1="insert into "+tablename+" ("; insSql2="values(";
2)生成sql语句关键字段部分
生成insert语句关键字段部分,如:insert into table1(id 和 values(100));
只使用关键字段生成update,delete语句where部分,如:where id=100;
在操作类型为update时,网页form表单中不对关键字段的数据进行修改。
rs1=Stmt.executeQuery("SELECT column_name FROM v_pkey_column WHERE table_name='"+tablename+"'");//取关键字段字段名 while(rs1.next()){ fieldname=rs1.getString("column_name"); rs2=Stmt.executeQuery("SELECT data_type FROM v_dbstru WHERE table_name='"+tablename+"' AND column_name='"+fieldname+"'");//取关键字段数据类型 if(rs2.next()){ Datatype=rs2.getString("data_type"); sFieldValue=request.getParameter(fieldname.toLowerCase()); //生成insert语句关键字段部分 if(OperType.equals("insert")){ insSql1+=fieldname+","; if((sFieldValue==null) ){ //表单未提交关键字段数据值时,本文只按数字型处理,数据值按下一流水号计算。 rs2= Stmt. executeQuery("SELECT max("+fieldname+")+1 FROM "+t 上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
|