shawl.qiu c# .net 自动生成 OleDb 数据操作语句小工具 Producing OleDbSql 1.1

shawl.qiu c# .net 自动生成 OleDb 数据操作语句小工具 Producing OleDbSql 1.1


说明:
这个小工具主要用途就是, 我希望输入表字段, 如: gbname, gbeditpwd, gbcompanyname, gbtel, gbmobile, gbemail, gbfax, gbqq, gbmsn, gbhp, gbsubject, gbtext, gbubbdisable, gbnopublic, 每个表字段的字段名都对应着某某控件.

当我按提交后, 自动生成所需数据操作语句,,,
目前写.NET主要使用 OleDbConnection, OleDbCommand + OleDbParameter
至于为什么选择 OleDbParameter, 当然就是 单引号问题了...

目前只生成针对 Access 的操作语句, 因这阵子没需求去使用 SqlServer, 就懒得弄了...

下载:
http://files.myopera.com/btbtd/csharp/Tools/Producing_OleDbSql.7z

目录:
1. 生成格式预览
2. Producing_OleDbSql.aspx

shawl.qiu
2007-05-05
http://blog.csdn.net/btbtd


内容:
1. 生成格式预览
  1.   OleDbConnection oCnn = new OleDbConnection(Sys.Conn);
  2.   OleDbCommand oCmd = new OleDbCommand(
  3.    "insert into guestbook"+
  4.    "(gbname,gbeditpwd,gbcompanyname,gbtel,gbmobile,gbemail,gbfax,gbqq,gbmsn,gbhp,gbsubject,gbtext,gbubbdisable,gbnopublic) "+
  5.    " values"+
  6.    "(@gbname,@gbeditpwd,@gbcompanyname,@gbtel,@gbmobile,@gbemail,@gbfax,@gbqq,@gbmsn,@gbhp,@gbsubject,@gbtext,@gbubbdisable,@gbnopublic)",
  7.    oCnn);
  8.   
  9.   OleDbParameter Param1 = new OleDbParameter("@gbname", "OleDbType.Varchar");
  10.   Param1.Value = gbname.Text;
  11.   oCmd.Parameters.Add(Param1)
  12.   
  13.   OleDbParameter Param2 = new OleDbParameter("@gbeditpwd", "OleDbType.Varchar");
  14.   Param2.Value = gbeditpwd.Text;
  15.   oCmd.Parameters.Add(Param2)
  16.   
  17.   OleDbParameter Param3 = new OleDbParameter("@gbcompanyname", "OleDbType.Varchar");
  18.   Param3.Value = gbcompanyname.Text;
  19.   oCmd.Parameters.Add(Param3)
  20.   
  21.   OleDbParameter Param4 = new OleDbParameter("@gbtel", "OleDbType.Varchar");
  22.   Param4.Value = gbtel.Text;
  23.   oCmd.Parameters.Add(Param4)
  24.   
  25.   OleDbParameter Param5 = new OleDbParameter("@gbmobile", "OleDbType.Varchar");
  26.   Param5.Value = gbmobile.Text;
  27.   oCmd.Parameters.Add(Param5)
  28.   
  29.   OleDbParameter Param6 = new OleDbParameter("@gbemail", "OleDbType.Varchar");
  30.   Param6.Value = gbemail.Text;
  31.   oCmd.Parameters.Add(Param6)
  32.   
  33.   OleDbParameter Param7 = new OleDbParameter("@gbfax", "OleDbType.Varchar");
  34.   Param7.Value = gbfax.Text;
  35.   oCmd.Parameters.Add(Param7)
  36.   
  37.   OleDbParameter Param8 = new OleDbParameter("@gbqq", "OleDbType.Varchar");
  38.   Param8.Value = gbqq.Text;
  39.   oCmd.Parameters.Add(Param8)
  40.   
  41.   OleDbParameter Param9 = new OleDbParameter("@gbmsn", "OleDbType.Varchar");
  42.   Param9.Value = gbmsn.Text;
  43.   oCmd.Parameters.Add(Param9)
  44.   
  45.   OleDbParameter Param10 = new OleDbParameter("@gbhp", "OleDbType.Varchar");
  46.   Param10.Value = gbhp.Text;
  47.   oCmd.Parameters.Add(Param10)
  48.   
  49.   OleDbParameter Param11 = new OleDbParameter("@gbsubject", "OleDbType.Varchar");
  50.   Param11.Value = gbsubject.Text;
  51.   oCmd.Parameters.Add(Param11)
  52.   
  53.   OleDbParameter Param12 = new OleDbParameter("@gbtext", "OleDbType.Varchar");
  54.   Param12.Value = gbtext.Text;
  55.   oCmd.Parameters.Add(Param12)
  56.   
  57.   OleDbParameter Param13 = new OleDbParameter("@gbubbdisable", "OleDbType.Varchar");
  58.   Param13.Value = gbubbdisable.Checked?"1":"0";
  59.   oCmd.Parameters.Add(Param13)
  60.   
  61.   OleDbParameter Param14 = new OleDbParameter("@gbnopublic", "OleDbType.Varchar");
  62.   Param14.Value = gbnopublic.Checked?"1":"0";
  63.   oCmd.Parameters.Add(Param14)
  64.   
  65.   oCnn.Open();
  66.   oCmd.ExecuteNonQuery();
  67.   oCnn.Close();
  68.   
  69.   Utility.GoBack("操作完毕,3 秒后返回,还有 ", 3, true, InfoLbl);
2. Producing_OleDbSql.aspx
  1. <%@ Page Language="C#" AutoEventWireup="True" %>
  2. <script runat="server">
  3.  string AuSubject = "shawl.qiu .net Tools - Producing OleDbSql";
  4.  string AuVersion = "1.1";
  5.  
  6.  void Page_Load(Object s, EventArgs e)
  7.  {
  8.  } // end Page_Load
  9.  
  10.  public static void ClearSpace(ref string ipt)
  11.  {
  12.   ipt = Regex.Replace(ipt, @"/s+", "");
  13.  }
  14.   
  15.  void SubmitFunc(Object s, EventArgs e)
  16.  {
  17.   bool Debug = false;
  18.   
  19.   if(Debug)
  20.   {
  21.    Response.Write("<li/>SubmitFunc: Ok");
  22.   }
  23.   string sCnnName = Cnn.Text;
  24.   string sCmdName = Cmd.Text;
  25.   string sTblName = TblName.Text;
  26.   string sCnnStrName = ConnStr.Text;
  27.   string sParamPrefix = Param.Text;
  28.  
  29.   string  sSet = Columns.Text;
  30.   
  31.  ClearSpace(ref sSet);
  32.  
  33.  string[] sAr = sSet.Split(',');
  34.  
  35.   Response.Write("<xmp>");
  36.   
  37.   Response.Write("OleDbConnection "+sCnnName+" = new OleDbConnection("+sCnnStrName+");/r/n");
  38.   Response.Write("OleDbCommand "+sCmdName+" = new OleDbCommand(/r/n");
  39.   
  40.   if(opt.SelectedValue == "insert")
  41.   {
  42.    Response.Write(" /"insert into "+sTblName+"/"+/r/n");
  43.    Response.Write(" /"("+sSet+") /"+/r/n");
  44.    Response.Write(" /" values/"+/r/n");
  45.    Response.Write(" /"("+Regex.Replace(sSet, "([a-zA-Z0-9-_]+)", "@$1")+")/"");
  46.   }
  47.   else
  48.   {
  49.    Response.Write("/"update "+sTblName+" set /"+/r/n");
  50.    Response.Write("/""+Regex.Replace(sSet, "([a-zA-Z0-9-_]+)", "$1=@$1"));
  51.    Response.Write(" where ");
  52.    Response.Write(UpdateCdti.Text);
  53.   }
  54.    Response.Write(",/r/n "+sCnnName+");/r/n/r/n");
  55.   
  56.   for(int i=0; i<sAr.Length; i++)
  57.   {
  58.    Response.Write("OleDbParameter "+sParamPrefix+(i+1)+" = new OleDbParameter(/"@"+sAr[i]+
  59.    "/", /"OleDbType.Varchar/");"+"/r/n");
  60.    if(IsCheckBox.Text!="")
  61.    {
  62.     if(Test(IsCheckBox.Text, @"/b"+sAr[i]+@"/b"))
  63.     {
  64.      Response.Write(sParamPrefix+(i+1)+".Value = "+sAr[i]+".Checked?/"1/":/"0/";/r/n");
  65.     }
  66.     else
  67.     {
  68.      Response.Write(sParamPrefix+(i+1)+".Value = "+sAr[i]+".Text;/r/n");
  69.     }
  70.    }
  71.    else
  72.    {
  73.     Response.Write(sParamPrefix+(i+1)+".Value = "+sAr[i]+".Text;/r/n");
  74.    }
  75.    Response.Write(sCmdName+".Parameters.Add("+sParamPrefix+(i+1)+"); /r/n/r/n");
  76.   }
  77.   
  78.   Response.Write(sCnnName+".Open();/r/n");
  79.   Response.Write(sCmdName+".ExecuteNonQuery();/r/n");
  80.   Response.Write(sCnnName+".Close();/r/n/r/n");
  81.         
  82.   Response.Write("Utility.GoBack(/""+GoBackMsg.Text+" /", "+GoBackSecond.Text+
  83.   ", "+GoBackUrl.Text+", "+GoBackLbl.Text+");/r/n/r/n");
  84.   
  85.   Response.Write("</xmp>")
  86.  } // end void SubmitFunc
  87.  
  88.   public static bool Test(string ipt, string ptr, RegexOptions ro)
  89.   {
  90.    return Regex.IsMatch(@ipt, @ptr, ro);
  91.   }
  92.   
  93.   public static bool Test(string ipt, string ptr)
  94.   {
  95.    return Regex.IsMatch(@ipt, @ptr, RegexOptions.IgnoreCase);
  96.   }
  97. </script>
  98. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  99. <html xmlns="http://www.w3.org/1999/xhtml">
  100. <!-- DW6 -->
  101. <head>
  102. <meta http-equiv="Content-Typecontent="text/html; charset=utf-8" />
  103. <title>shawl.qiu template</title>
  104. <style type="text/css">
  105. /* <![CDATA[ */
  106. /* shawl.qiu CSS Document : shawl.qiu@gmail.com */
  107. /* shawl.qiu CSS 通用设置  2.1 2007-5-4 16:28:11 */

  108. /* begin general css definition */
  109. html, body 
  110. {/* 设置滚动条颜色 - IE */
  111.  scrollbar-arrow-color: #ffffff; /*箭头*/
  112.  scrollbar-track-color: #ffffff; /*底色*/
  113.  scrollbar-base-color: #79F479; /*基本色调*/
  114.  scrollbar-face-color: #03D100; /*表面*/
  115.  scrollbar-dark-shadow-color:#252523; /*阴影*/
  116. }

  117. body
  118. {
  119.  margin:0px auto;
  120.  width:760px;
  121.  background-color:#fff;
  122.  font: 14px Arial, Helvetica, sans-serif, 宋体;
  123. }

  124. *
  125. {
  126.  margin:0px;
  127.  padding:0px; 
  128.  text-decoration:none;
  129. }

  130. * img
  131. {
  132.  border:0px;
  133. }

  134. .corDcbackground-color:rgb(248,248,248); }
  135. .corLcbackground-color:rgb(252,252,252); }

  136. .corRed {color:red;}
  137. .corGreen {color:green;}
  138. .corBlack {color:black;}
  139. .corYellow{color:yellow;}
  140. .corWhite{color:white;}
  141. .corFuchsia{color:fuchsia;}

  142. .corWhiteAll, .corWhiteAll *, .corWhiteAll a:visited
  143. {
  144.  color:white;
  145. }

  146. .hl
  147. {
  148.  background-color:yellow;
  149.  color:black;
  150.  margin:5px 0px;
  151.  padding:2px;
  152.  text-align:center;
  153. }

  154. .hlLc
  155. {
  156.  background-color:#F2F2F2;
  157.  color:black;
  158.  margin:5px 0px;
  159.  padding:2px;
  160.  text-align:center;
  161. }

  162. .algrtext-align:right;}
  163. .algltext-align:left; }
  164. .algctext-align:center;}

  165. .dspIldisplay:inline;}
  166. .dspNndisplay:none;}

  167. .fltrfloat:right; }
  168. .fltlfloat:left; }

  169. .ftBold{font-weight:bold}

  170. a:linkcolor:black;}
  171. a:hoverbackground-color:transparentcolor:black;}
  172. a:visitedbackground-color:transparent;}

  173. .cbothclear:both; }

  174. hr
  175. {
  176.  border-top: 1px dashed #FFFFFF!important;
  177.  border-right: 1px dashed #FFFFFF!important;
  178.  border-bottom:1px dashed black!important
  179.  border-left: 1px dashed #FFFFFF!important;
  180.  margin:10px 0px;
  181. }
  182.  
  183. pmargin:5px 0px; } 

  184. .sqPagedCurLink
  185. {
  186.  color: #FFCCFF;
  187.  font-weight:bold;
  188. }

  189. .sqPagedNonLink
  190. {
  191.  color:#ccc;
  192. }

  193. .sqPagedJumpBox
  194. {
  195.  border:0px;
  196.  border-bottom:1px dashed black;
  197.  width:48px;
  198. }

  199. .TblSolidBorder
  200.  background-color:#FFFFFF !important; /*表格背景色绝对白色*/
  201.  border-collapse: collapse; /*清除 IE 的默认边框*/
  202.  border: 1px solid #999999;
  203. }

  204. .TblSolidBorder tr td
  205. {
  206.  padding:2px!important;
  207. }

  208. .TblSolidBorder td, .TblSolidBorder th 
  209. {
  210.  border-top: 1px solid #999999; /* 设置 1px 比设置为 thin 通用 */
  211.  border-right: 1px solid #999999;
  212.  border-collapse: collapse; /*清除 IE 默认边框*/
  213.  padding:2px;
  214. }
  215. /* end general css definition */   


  216. /* start for dot net definition */
  217. .MainDl
  218. {
  219. }

  220. .MainDl table
  221. {
  222.  margin:5px 0px;
  223. }

  224. .MainDl tr td table tr td
  225. {
  226.  padding:2px;
  227. }

  228. .MainTbl
  229. {
  230.  margin:5px 0px;
  231. }

  232. .MainTbl tr td
  233. {
  234.  padding:2px;
  235. }

  236. .MainTblTitle
  237. {
  238.  background-color:#F2F2F2;
  239.  text-align:center;
  240.  padding:5px 0px;
  241. }

  242. /* end for dot net definition */
  243. /* ]]> */
  244. </style>
  245. </head>
  246. <body>
  247.  <form runat="server">
  248. <table width="90%border="0align="centercellpadding="0cellspacing="0class="MainTbl">
  249.  <tr>
  250.   <td colspan="2align="center">
  251.    <div class="hlLc">
  252.     <% Response.Write(AuSubject); %>&nbsp;<% Response.Write(AuVersion); %> 
  253.    </div>
  254.   </td>
  255.  </tr>
  256.  <tr>
  257.   <td align="right">Option: </td>
  258.   <td>
  259.    <asp:DropDownList ID="optrunat="server">
  260.     <asp:ListItem Value="insertSelected="true">insert</asp:ListItem>
  261.     <asp:ListItem Value="update">update</asp:ListItem>
  262.    </asp:DropDownList>
  263.   </td>
  264.  </tr>
  265.  <tr>
  266.   <td align="right">Columns String:</td>
  267.   <td>
  268.    <asp:TextBox ID="Columnsrunat="server"
  269.     Columns="60"
  270.     Text="gbname, gbeditpwd, gbcompanyname, gbtel, gbmobile, gbemail, gbfax, gbqq, gbmsn, gbhp, gbsubject, gbtext, gbubbdisable, gbnopublic"
  271.     />(column,column,column)
  272.   </td>
  273.  </tr>
  274.  <tr>
  275.   <td align="right">Update Condition: </td>
  276.   <td>
  277.    <asp:TextBox ID="UpdateCdtirunat="server"
  278.     Text="id="
  279.     /><font color="red">注意!如果是更新语句, 请记得指定条件!(如: id="+variable)</font>
  280.   </td>
  281.  </tr>
  282.  <tr>
  283.   <td width="180align="right">OleDbConnection Name: </td>
  284.   <td>
  285.    <asp:TextBox ID="Cnnrunat="server"
  286.     Text="oCnn"
  287.     />
  288.   </td>
  289.  </tr>
  290.  <tr>
  291.   <td width="180align="right">OleDbCommand Name: </td>
  292.   <td>
  293.    <asp:TextBox ID="Cmdrunat="server"
  294.     Text="oCmd"
  295.     />
  296.   </td>
  297.  </tr>
  298.  <tr>
  299.   <td width="180align="right">Table Name: </td>
  300.   <td>
  301.    <asp:TextBox ID="TblNamerunat="server"
  302.     Text="guestbook"
  303.     />
  304.   </td>
  305.  </tr>
  306.  <tr>
  307.   <td width="180align="right">Connection String: </td>
  308.   <td>
  309.    <asp:TextBox ID="ConnStrrunat="server"
  310.     Columns="60"
  311.     Text="Sys.Conn"
  312.     />
  313.   </td>
  314.  </tr>
  315.  <tr>
  316.   <td width="180align="right">OleDbParameter Prefix: </td>
  317.   <td>
  318.    <asp:TextBox ID="Paramrunat="server"
  319.     Text="Param"
  320.     />
  321.   </td>
  322.  </tr>
  323.  <tr>
  324.   <td width="180align="right">GoBack Message: </td>
  325.   <td>
  326.    <asp:TextBox ID="GoBackMsgrunat="server"
  327.     Text="操作完毕,3 秒后返回,还有"
  328.     Columns="60"
  329.     />
  330.   </td>
  331.  </tr>
  332.  <tr>
  333.   <td align="right">GoBack Second:: </td>
  334.   <td>
  335.    <asp:TextBox ID="GoBackSecondrunat="server"
  336.     Text="3"
  337.     />
  338.    </td>
  339.  </tr>
  340.  <tr>
  341.   <td align="right">GoBack Url: </td>
  342.   <td>
  343.    <asp:TextBox ID="GoBackUrlrunat="server"
  344.     Text="true"
  345.     Columns="60"
  346.     />
  347.   </td>
  348.  </tr>
  349.  <tr>
  350.   <td align="right">GoBack Label: </td>
  351.   <td>
  352.    <asp:TextBox ID="GoBackLblrunat="server"
  353.     Text="InfoLbl"
  354.     />
  355.   </td>
  356.  </tr>
  357.  <tr>
  358.   <td align="right">&nbsp;</td>
  359.   <td>&nbsp;</td>
  360.  </tr>
  361.  <tr>
  362.   <td align="right">Is CheckBox:</td>
  363.   <td>
  364.    <asp:TextBox ID="IsCheckBoxrunat="server"
  365.     Text="gbubbdisable, gbnopublic"
  366.     />
  367.   </td>
  368.  </tr>
  369.  <tr>
  370.   <td width="180align="right">&nbsp;</td>
  371.   <td>
  372.   <input type="submitrunat="server"
  373.    value="提交"
  374.    οnclick="return confirm('现在提交更改吗?')"
  375.    OnServerClick="SubmitFunc"
  376.    />
  377.   <input type="resetrunat="server"
  378.    value="重置"
  379.    οnclick="return confirm('现在重置吗?')"
  380.    />
  381.   </td>
  382.  </tr>
  383. </table>
  384.  <p>&nbsp;</p>
  385.  <table width="90%border="0align="rightcellpadding="0cellspacing="0class="TblSolidBorder">
  386.   <tr>
  387.    <td width="120align="rightvalign="top">Subject: </td>
  388.    <td align="leftvalign="top"><% Response.Write(AuSubject); %></td>
  389.   </tr>
  390.   <tr>
  391.    <td width="120align="rightvalign="top">Version:</td>
  392.    <td align="leftvalign="top"><% Response.Write(AuVersion); %></td>
  393.   </tr>
  394.   <tr>
  395.    <td width="120align="rightvalign="top">Author:</td>
  396.    <td align="leftvalign="top">shawl.qiu</td>
  397.   </tr>
  398.   <tr>
  399.    <td width="120align="rightvalign="top">E-Mail:</td>
  400.    <td align="leftvalign="top">shawl.qiu@gmail.com</td>
  401.   </tr>
  402.   <tr>
  403.    <td width="120align="rightvalign="top">Blog:</td>
  404.    <td align="leftvalign="top">http://blog.csdn.net/btbtd</td>
  405.   </tr>
  406.   <tr>
  407.    <td align="rightvalign="top">Created Date: </td>
  408.    <td align="leftvalign="top">2007-5-4</td>
  409.   </tr>
  410.  </table>
  411.  <p>&nbsp;</p>
  412.  </form>
  413. </body>
  414. </html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值