shawl.qiu c# .net 自动生成 OleDb 数据操作语句小工具 Producing OleDbSql 1.1
2007-05-05 21:22
991 查看
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. 生成格式预览
OleDbConnection oCnn = new OleDbConnection(Sys.Conn);
OleDbCommand oCmd = new OleDbCommand(
"insert into guestbook"+
"(gbname,gbeditpwd,gbcompanyname,gbtel,gbmobile,gbemail,gbfax,gbqq,gbmsn,gbhp,gbsubject,gbtext,gbubbdisable,gbnopublic) "+
" values"+
"(@gbname,@gbeditpwd,@gbcompanyname,@gbtel,@gbmobile,@gbemail,@gbfax,@gbqq,@gbmsn,@gbhp,@gbsubject,@gbtext,@gbubbdisable,@gbnopublic)",
oCnn);
OleDbParameter Param1 = new OleDbParameter("@gbname", "OleDbType.Varchar");
Param1.Value = gbname.Text;
oCmd.Parameters.Add(Param1);
OleDbParameter Param2 = new OleDbParameter("@gbeditpwd", "OleDbType.Varchar");
Param2.Value = gbeditpwd.Text;
oCmd.Parameters.Add(Param2);
OleDbParameter Param3 = new OleDbParameter("@gbcompanyname", "OleDbType.Varchar");
Param3.Value = gbcompanyname.Text;
oCmd.Parameters.Add(Param3);
OleDbParameter Param4 = new OleDbParameter("@gbtel", "OleDbType.Varchar");
Param4.Value = gbtel.Text;
oCmd.Parameters.Add(Param4);
OleDbParameter Param5 = new OleDbParameter("@gbmobile", "OleDbType.Varchar");
Param5.Value = gbmobile.Text;
oCmd.Parameters.Add(Param5);
OleDbParameter Param6 = new OleDbParameter("@gbemail", "OleDbType.Varchar");
Param6.Value = gbemail.Text;
oCmd.Parameters.Add(Param6);
OleDbParameter Param7 = new OleDbParameter("@gbfax", "OleDbType.Varchar");
Param7.Value = gbfax.Text;
oCmd.Parameters.Add(Param7);
OleDbParameter Param8 = new OleDbParameter("@gbqq", "OleDbType.Varchar");
Param8.Value = gbqq.Text;
oCmd.Parameters.Add(Param8);
OleDbParameter Param9 = new OleDbParameter("@gbmsn", "OleDbType.Varchar");
Param9.Value = gbmsn.Text;
oCmd.Parameters.Add(Param9);
OleDbParameter Param10 = new OleDbParameter("@gbhp", "OleDbType.Varchar");
Param10.Value = gbhp.Text;
oCmd.Parameters.Add(Param10);
OleDbParameter Param11 = new OleDbParameter("@gbsubject", "OleDbType.Varchar");
Param11.Value = gbsubject.Text;
oCmd.Parameters.Add(Param11);
OleDbParameter Param12 = new OleDbParameter("@gbtext", "OleDbType.Varchar");
Param12.Value = gbtext.Text;
oCmd.Parameters.Add(Param12);
OleDbParameter Param13 = new OleDbParameter("@gbubbdisable", "OleDbType.Varchar");
Param13.Value = gbubbdisable.Checked?"1":"0";
oCmd.Parameters.Add(Param13);
OleDbParameter Param14 = new OleDbParameter("@gbnopublic", "OleDbType.Varchar");
Param14.Value = gbnopublic.Checked?"1":"0";
oCmd.Parameters.Add(Param14);
oCnn.Open();
oCmd.ExecuteNonQuery();
oCnn.Close();
Utility.GoBack("操作完毕,3 秒后返回,还有 ", 3, true, InfoLbl);
2. Producing_OleDbSql.aspx
<%@ Page Language="C#" AutoEventWireup="True" %>
<script runat="server">
string AuSubject = "shawl.qiu .net Tools - Producing OleDbSql";
string AuVersion = "1.1";
void Page_Load(Object s, EventArgs e)
{
} // end Page_Load
public static void ClearSpace(ref string ipt)
{
ipt = Regex.Replace(ipt, @"/s+", "");
}
void SubmitFunc(Object s, EventArgs e)
{
bool Debug = false;
if(Debug)
{
Response.Write("<li/>SubmitFunc: Ok");
}
string sCnnName = Cnn.Text;
string sCmdName = Cmd.Text;
string sTblName = TblName.Text;
string sCnnStrName = ConnStr.Text;
string sParamPrefix = Param.Text;
string sSet = Columns.Text;
ClearSpace(ref sSet);
string[] sAr = sSet.Split(',');
Response.Write("<xmp>");
Response.Write("OleDbConnection "+sCnnName+" = new OleDbConnection("+sCnnStrName+");/r/n");
Response.Write("OleDbCommand "+sCmdName+" = new OleDbCommand(/r/n");
if(opt.SelectedValue == "insert")
{
Response.Write(" /"insert into "+sTblName+"/"+/r/n");
Response.Write(" /"("+sSet+") /"+/r/n");
Response.Write(" /" values/"+/r/n");
Response.Write(" /"("+Regex.Replace(sSet, "([a-zA-Z0-9-_]+)", "@$1")+")/"");
}
else
{
Response.Write("/"update "+sTblName+" set /"+/r/n");
Response.Write("/""+Regex.Replace(sSet, "([a-zA-Z0-9-_]+)", "$1=@$1"));
Response.Write(" where ");
Response.Write(UpdateCdti.Text);
}
Response.Write(",/r/n "+sCnnName+");/r/n/r/n");
for(int i=0; i<sAr.Length; i++)
{
Response.Write("OleDbParameter "+sParamPrefix+(i+1)+" = new OleDbParameter(/"@"+sAr[i]+
"/", /"OleDbType.Varchar/");"+"/r/n");
if(IsCheckBox.Text!="")
{
if(Test(IsCheckBox.Text, @"/b"+sAr[i]+@"/b"))
{
Response.Write(sParamPrefix+(i+1)+".Value = "+sAr[i]+".Checked?/"1/":/"0/";/r/n");
}
else
{
Response.Write(sParamPrefix+(i+1)+".Value = "+sAr[i]+".Text;/r/n");
}
}
else
{
Response.Write(sParamPrefix+(i+1)+".Value = "+sAr[i]+".Text;/r/n");
}
Response.Write(sCmdName+".Parameters.Add("+sParamPrefix+(i+1)+"); /r/n/r/n");
}
Response.Write(sCnnName+".Open();/r/n");
Response.Write(sCmdName+".ExecuteNonQuery();/r/n");
Response.Write(sCnnName+".Close();/r/n/r/n");
Response.Write("Utility.GoBack(/""+GoBackMsg.Text+" /", "+GoBackSecond.Text+
", "+GoBackUrl.Text+", "+GoBackLbl.Text+");/r/n/r/n");
Response.Write("</xmp>");
} // end void SubmitFunc
public static bool Test(string ipt, string ptr, RegexOptions ro)
{
return Regex.IsMatch(@ipt, @ptr, ro);
}
public static bool Test(string ipt, string ptr)
{
return Regex.IsMatch(@ipt, @ptr, RegexOptions.IgnoreCase);
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- DW6 -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>shawl.qiu template</title>
<style type="text/css">
/* <![CDATA[ */
/* shawl.qiu CSS Document : shawl.qiu@gmail.com */
/* shawl.qiu CSS 通用设置 2.1 2007-5-4 16:28:11 */
/* begin general css definition */
html, body
{/* 设置滚动条颜色 - IE */
scrollbar-arrow-color: #ffffff; /*箭头*/
scrollbar-track-color: #ffffff; /*底色*/
scrollbar-base-color: #79F479; /*基本色调*/
scrollbar-face-color: #03D100; /*表面*/
scrollbar-dark-shadow-color:#252523; /*阴影*/
}
body
{
margin:0px auto;
width:760px;
background-color:#fff;
font: 14px Arial, Helvetica, sans-serif, 宋体;
}
*
{
margin:0px;
padding:0px;
text-decoration:none;
}
* img
{
border:0px;
}
.corDc{ background-color:rgb(248,248,248); }
.corLc{ background-color:rgb(252,252,252); }
.corRed {color:red;}
.corGreen {color:green;}
.corBlack {color:black;}
.corYellow{color:yellow;}
.corWhite{color:white;}
.corFuchsia{color:fuchsia;}
.corWhiteAll, .corWhiteAll *, .corWhiteAll a:visited
{
color:white;
}
.hl
{
background-color:yellow;
color:black;
margin:5px 0px;
padding:2px;
text-align:center;
}
.hlLc
{
background-color:#F2F2F2;
color:black;
margin:5px 0px;
padding:2px;
text-align:center;
}
.algr{ text-align:right;}
.algl{ text-align:left; }
.algc{ text-align:center;}
.dspIl{ display:inline;}
.dspNn{ display:none;}
.fltr{ float:right; }
.fltl{ float:left; }
.ftBold{font-weight:bold}
a:link{ color:black;}
a:hover{ background-color:transparent; color:black;}
a:visited{ background-color:transparent;}
.cboth{ clear:both; }
hr
{
border-top: 1px dashed #FFFFFF!important;
border-right: 1px dashed #FFFFFF!important;
border-bottom:1px dashed black!important;
border-left: 1px dashed #FFFFFF!important;
margin:10px 0px;
}
p{ margin:5px 0px; }
.sqPagedCurLink
{
color: #FFCCFF;
font-weight:bold;
}
.sqPagedNonLink
{
color:#ccc;
}
.sqPagedJumpBox
{
border:0px;
border-bottom:1px dashed black;
width:48px;
}
.TblSolidBorder
{
background-color:#FFFFFF !important; /*表格背景色绝对白色*/
border-collapse: collapse; /*清除 IE 的默认边框*/
border: 1px solid #999999;
}
.TblSolidBorder tr td
{
padding:2px!important;
}
.TblSolidBorder td, .TblSolidBorder th
{
border-top: 1px solid #999999; /* 设置 1px 比设置为 thin 通用 */
border-right: 1px solid #999999;
border-collapse: collapse; /*清除 IE 默认边框*/
padding:2px;
}
/* end general css definition */
/* start for dot net definition */
.MainDl
{
}
.MainDl table
{
margin:5px 0px;
}
.MainDl tr td table tr td
{
padding:2px;
}
.MainTbl
{
margin:5px 0px;
}
.MainTbl tr td
{
padding:2px;
}
.MainTblTitle
{
background-color:#F2F2F2;
text-align:center;
padding:5px 0px;
}
/* end for dot net definition */
/* ]]> */
</style>
</head>
<body>
<form runat="server">
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0" class="MainTbl">
<tr>
<td colspan="2" align="center">
<div class="hlLc">
<% Response.Write(AuSubject); %> <% Response.Write(AuVersion); %>
</div>
</td>
</tr>
<tr>
<td align="right">Option: </td>
<td>
<asp:DropDownList ID="opt" runat="server">
<asp:ListItem Value="insert" Selected="true">insert</asp:ListItem>
<asp:ListItem Value="update">update</asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr>
<td align="right">Columns String:</td>
<td>
<asp:TextBox ID="Columns" runat="server"
Columns="60"
Text="gbname, gbeditpwd, gbcompanyname, gbtel, gbmobile, gbemail, gbfax, gbqq, gbmsn, gbhp, gbsubject, gbtext, gbubbdisable, gbnopublic"
/>(column,column,column)
</td>
</tr>
<tr>
<td align="right">Update Condition: </td>
<td>
<asp:TextBox ID="UpdateCdti" runat="server"
Text="id="
/><font color="red">注意!如果是更新语句, 请记得指定条件!(如: id="+variable)</font>
</td>
</tr>
<tr>
<td width="180" align="right">OleDbConnection Name: </td>
<td>
<asp:TextBox ID="Cnn" runat="server"
Text="oCnn"
/>
</td>
</tr>
<tr>
<td width="180" align="right">OleDbCommand Name: </td>
<td>
<asp:TextBox ID="Cmd" runat="server"
Text="oCmd"
/>
</td>
</tr>
<tr>
<td width="180" align="right">Table Name: </td>
<td>
<asp:TextBox ID="TblName" runat="server"
Text="guestbook"
/>
</td>
</tr>
<tr>
<td width="180" align="right">Connection String: </td>
<td>
<asp:TextBox ID="ConnStr" runat="server"
Columns="60"
Text="Sys.Conn"
/>
</td>
</tr>
<tr>
<td width="180" align="right">OleDbParameter Prefix: </td>
<td>
<asp:TextBox ID="Param" runat="server"
Text="Param"
/>
</td>
</tr>
<tr>
<td width="180" align="right">GoBack Message: </td>
<td>
<asp:TextBox ID="GoBackMsg" runat="server"
Text="操作完毕,3 秒后返回,还有"
Columns="60"
/>
</td>
</tr>
<tr>
<td align="right">GoBack Second:: </td>
<td>
<asp:TextBox ID="GoBackSecond" runat="server"
Text="3"
/>
</td>
</tr>
<tr>
<td align="right">GoBack Url: </td>
<td>
<asp:TextBox ID="GoBackUrl" runat="server"
Text="true"
Columns="60"
/>
</td>
</tr>
<tr>
<td align="right">GoBack Label: </td>
<td>
<asp:TextBox ID="GoBackLbl" runat="server"
Text="InfoLbl"
/>
</td>
</tr>
<tr>
<td align="right"> </td>
<td> </td>
</tr>
<tr>
<td align="right">Is CheckBox:</td>
<td>
<asp:TextBox ID="IsCheckBox" runat="server"
Text="gbubbdisable, gbnopublic"
/>
</td>
</tr>
<tr>
<td width="180" align="right"> </td>
<td>
<input type="submit" runat="server"
value="提交"
onclick="return confirm('现在提交更改吗?')"
OnServerClick="SubmitFunc"
/>
<input type="reset" runat="server"
value="重置"
onclick="return confirm('现在重置吗?')"
/>
</td>
</tr>
</table>
<p> </p>
<table width="90%" border="0" align="right" cellpadding="0" cellspacing="0" class="TblSolidBorder">
<tr>
<td width="120" align="right" valign="top">Subject: </td>
<td align="left" valign="top"><% Response.Write(AuSubject); %></td>
</tr>
<tr>
<td width="120" align="right" valign="top">Version:</td>
<td align="left" valign="top"><% Response.Write(AuVersion); %></td>
</tr>
<tr>
<td width="120" align="right" valign="top">Author:</td>
<td align="left" valign="top">shawl.qiu</td>
</tr>
<tr>
<td width="120" align="right" valign="top">E-Mail:</td>
<td align="left" valign="top">shawl.qiu@gmail.com</td>
</tr>
<tr>
<td width="120" align="right" valign="top">Blog:</td>
<td align="left" valign="top">http://blog.csdn.net/btbtd</td>
</tr>
<tr>
<td align="right" valign="top">Created Date: </td>
<td align="left" valign="top">2007-5-4</td>
</tr>
</table>
<p> </p>
</form>
</body>
</html>
相关文章推荐
- codeTool代码自动生成工具(参数类sql数据增删改查语句,实体类,接口代码)
- SQL语句自动生成封装---数据实体操作封装(二)
- ASP.NET基础教程-使用CommandBuilder对象自动生成SQL语句对数据进行批量更新
- 自动生成清空数据库的SQL语句 ----C#.NET 通用权限管理系统,.NET 开发者的福音
- 动态生成SQL语句,对数据操作
- Asp.net/c#+OleDb操作excel文件(二),数据传输使用Parameters
- Asp.net/c#+OleDb操作excel文件(二),数据传输使用Parameters
- ASP.NET基础教程-使用CommandBuilder对象自动生成SQL语句对数据进行批量更新
- Oracle自动生成数据字典的SQL语句
- SQL备份工具:自动从数据生成SQL脚本
- 第二十九讲 : ADO.NET(玩SQL语句) 实例补充(OLEDB操作)
- UML工具推荐 Poseidon版本 可以免费下载,自动生成代码 C++ Java C# VB.NET等 (来自德国汉堡的国际性建模软件开发商Gentleware AG的)
- c# .net 生成缩略图(按比例) By shawl.qiu
- Oracle自动生成数据字典的SQL语句
- 将数据字典自动生成sql语句
- DOTNET零碎总结---VB.NET修改数据存在多个txtbox时,SQL语句的操作
- 自动生成MOSS Query的SQL语句的工具
- shawl.qiu c# .net 服务端表单验证类 FormValidator 1.1
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
- Oracle自动生成数据字典的SQL语句