快速业务通道

asp.net夜话之七:ADO.NET介绍

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
类型为int
DataColumn dc1 = new DataColumn("ID", typeof(int));
dc1.AllowDBNull = false;//不允许为空
dc1.AutoIncrement = true;//自动递增
dc1.AutoIncrementSeed = 1;//列起始值为1
dc1.AutoIncrementStep = 1;//步长为1
data.Columns.Add(dc1);//添加列到表中
//创建一个新列,列名为"UserName",值类型为string
DataColumn dc = new DataColumn("UserName", typeof(string));
dc.Unique = true;//设置唯一索引
dc.MaxLength = 20;//设置字段最大长度
data.Columns.Add(dc);
dc = new DataColumn("Birthday", typeof(DateTime));
dc.DefaultValue = DateTime.Now.AddYears(-2000);
data.Columns.Add(dc);
DataRow row=data.NewRow();//得到与刚才创建的表有相同结构的行
row["UserName"]="张飞";//设置列的UserName值,Birthday列采用默认值
data.Rows.Add(row);//添加行
row = data.NewRow();
row["UserName"] = "刘备";
row["Birthday"] = new DateTime(1, 3, 4);
data.Rows.Add(row);
row = data.NewRow();
row["UserName"] = "关羽";
row["Birthday"] = new DateTime(6, 11, 7);//跟周公同月同日了:)
data.Rows.Add(row);
Session["Data"] = data;//将创建的表和添加的数据保存到Session中
}

protected void ShowData()
{
if (Session["Data"] == null)
{
CreateDataTable();
}
DataTable data=(DataTable)Session["Data"];
for (int i = 0; i < data.Rows.Count; i++)
{
Response.Write("<tr>");
Response.Write("<td>" + data.Rows[i]["ID"].ToString() + "</td>");
Response.Write("<td>" + data.Rows[i]["UserName"].ToString() + "</td>");
Response.Write("<td>" + DateTime.Parse(data.Rows[i]["Birthday"].ToString()).ToShortDateString() + "</td>");
Response.Write("</tr>");
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>自己创建DataTable的例子</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table border="1" width="400">
<tr><td>编号</td><td>用户名</td><td>生日</td></tr>
<% ShowData(); %>
</table>
</div>
</form>
</body>
</html>

上面代码我已经做了详尽的注释,它的运行效果如下:

asp.net夜话之七:ADO.NET介绍

参数化SQL语句

在前面的系列文章《asp.net夜话之三:表单和控件》中我提到了SQL注入的问题,避免SQL注入的方法有两种:一是所有的SQL语句都存放在存储过程中,这样不但可以避免SQL注入,还能提高一些性能,并且存储过程可以由专门的数据库管理员(DBA)编写和集中管理(这种做法我在一些公司见过),不过这种做法有时候针对相同的

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号