ADO.NET

一.什么是ado.net

ADO.NET是一组允许.NET开发人员使用标准的,结构化的,甚至无连接的方式与数据交互的技术。

   它所属类库是:System.Data.dll

二.连接到数据库

    2.1 web.config里面配置

<connectionStrings>
              <add name="qie_yishen" connectionString="Database=qie_yishen;Server=LENOVO-PC;Integrated Security=false;Uid=sa;Password=123456;"                         providerName="System.Data.SqlClient"/>
         </connectionStrings>

////// Integrated Security=True是Windows连接

2.2  后台调用

//通过节点的名称,获取节点的字符串

//电话号码

string strCon = ConfigurationManager.ConnectionStrings[“qie_yishen”(结点名,一般为数据库名)].ToString();   //System.Configuration命名空间

三.ado.net对象

3.1Connection对象,Command对象,SqlDataReader对象

//创建对象

SqlConnection con = new SqlConnection(strCon);//电话

con.Open(); //和数据库建立起连接,拨通电话

string strsql = string.Format("select userId from Login where userName='{0}'and userPwd='{1}'", username, pwd);//将字符串获取到内容中,防注入

SqlCommand cmd = new SqlCommand(strsql,con); //执行sql语句

SqlDataReader read = cmd.ExecuteReader();//获取sql语句的结果

                if(read.Read())
{
Response.Write("<script>alert('登录成功');</script>");
Response.Redirect("Rnewsfind.aspx"); //跳转页面
}
else
{
Response.Write("<script>alert('用户名密码错误')</script>");
}  
read.Close();
read.Dispose();
con.Close();
con.Dispose();

3.2Command对象

1. ExecuteNonQuery: 执行增删改语句,返回值为该命令所影响的行数。

2. ExecuteReader: 执行查询,并返回一个 DataReader 对象。

3. ExecuteScalar: 执行查询, 返回查询数。

另:  凡是继承于IDisposable的接口的都要释放资源 譬如:SqlConnection,SqlDataReade

using 1.引入命名空间 2.释放资源

所以上面也可以写成:

                using (SqlConnection con = new SqlConnection(strCon))
{
con.Open();
string strsql = string.Format("string userId from Login where userName='{0}'and userPwd='{1}'", username, pwd);
SqlCommand cmd = new SqlCommand(strsql, con);
using (SqlDataReader read = cmd.ExecuteReader())
{
if (read.Read())
{
Response.Write("<script>alert('登录成功');</script>");
}
else
{
Response.Write("<script>alert('用户名密码错误')</script>");
}
}
}

四.字符串拼凑,防sql注入

        StringBuilder sb = new StringBuilder();
sb.Append("select * from Rnews where 1=1");
if(!string.IsNullOrEmpty(txtNewid.Text.Trim()))
{
sb.Append(string.Format("and newsId={0}", Convert.ToInt32(txtNewid.Text.Trim())));
}
if(ddlnews.SelectedIndex>0)
{
sb.Append(string.Format("and Title='{0}'", ddlnews.SelectedValue));
}
return sb.ToString();

五.数据绑定

       string strsql = Getsql();
using(con = new SqlConnection(strCon))
{
con.Open();
cmd = new SqlCommand(strsql, con);
using(read=cmd.ExecuteReader())
{
if(read.HasRows) //获取结果集
{
gvRnews.DataSource = read; //获取数据源
gvRnews.DataBind(); //数据绑定
}
}
}

六.fieldset标签

 <fieldset style="width: 405px; height: 53px">
<legend align="top">查询</legend>
</fieldset>

  

 

2015-10-29 ado.net 1的更多相关文章

  1. Forth scrum meeting - 2015/10/29

    今天下午,我们终于要到了MOOC服务器端开发人员的联系方式,于是我们小组派了三名同学去实验室与他们进行了交流,并咨询了他们一些关于API接口的问题.他们也对我们这个客户端的开发提出了一些建议. 开发团 ...

  2. Daily Scrum (2015/10/29)

    今天晚上我们学霸项目的三个小组在一起开会,讨论如何能在后期使我们三个项目更好地结合在一起.为了三个小组的能够同时工作,不出现某一小组因需要其他小组成果而停滞的情况,我们决定围绕lucene,solr, ...

  3. Daily Scrumming* 2015.10.29(Day 10)

    一.总体情况总结 二.今明两天任务表 Member Today’s Task Tomorrow’s Task 江昊 了解微信API,与社团服务平台创业公司嗨社团创始人沟通,了解其平台运营方案与商业模式 ...

  4. 背水一战 Windows 10 (29) - 控件(文本类): RichTextBlock, RichTextBlockOverflow, RichEditBox

    [源码下载] 背水一战 Windows 10 (29) - 控件(文本类): RichTextBlock, RichTextBlockOverflow, RichEditBox 作者:webabcd ...

  5. 4分钟apache自带ab压力测试工具使用: 2015.10.4

    2015.10.44分钟apache自带ab压力测试工具使用:win8.1 wampserver2.5 -Apache-2.4.9-Mysql-5.6.17-php5.5.12-64b 可以参考一下部 ...

  6. 2015.12.29~2015.12.30真题回顾!-- HTML5学堂

    2015.12.29~2015.12.30真题回顾!-- HTML5学堂 吃饭,能够解决饥饿,提供身体运作机能.练习就像吃饭,强壮自己,提升编程技能,寻求编程技巧的最佳捷径!吃饭不能停,练习同样不能停 ...

  7. 【Selenium】【BugList9】windows环境,fp = open("./"+ time.strftime("%Y-%m-%d %H:%M:%S") + " result.html",'wb'),报错:OSError: [Errno 22] Invalid argument: './2018-09-05 10:29:32 result.html'

    [代码] if __name__=="__main__": suite = unittest.TestSuite() suite.addTest(Baidu("test_ ...

  8. 10.29 正睿停课训练 Day11

    目录 2018.10.29 正睿停课训练 Day11 A 线段树什么的最讨厌了(思路 DFS) B 已经没有什么好害怕的了(差分 前缀和) C 我才不是萝莉控呢(DP 贪心 哈夫曼树) 考试代码 A ...

  9. First Scrum Meeting (2015/10/18)

    会议是在昨晚进行的,本来早就应该写博了,可惜今天校园网炸个不停= =.刚修好就赶紧来发博客. 会议基本要素 会议主题:爬虫项目的核心技术讨论以及项目初期的工作分配 会议时间:2015.10.18 19 ...

  10. 第17次Scrum会议(10/29)【欢迎来怼】

    一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华 小组照片 二.开会信息 时间:2017/10/29 17:20~17:42,总计22min.地点:东北师 ...

随机推荐

  1. 1.字符串操作:& 2.英文词频统计预处理

    1.字符串操作: 解析身份证号:生日.性别.出生地等. ID = input('请输入十八位身份证号码: ') if len(ID) == 18: print("你的身份证号码是 " ...

  2. 微博第三方js-sdk登录

    https://open.weibo.com <meta property="wb:webmaster" content="your appkey" /& ...

  3. 处理smartgit 过期脚本

    @echo off @title SmartGit License Tool color 1f cls set "version=18.1" set "fpath=%AP ...

  4. Guitar Por如何演奏刮弦

    每当我们听到吉他现场演出的时候,看到吉他手在激烈的刮弦时,都觉得很酷,非常有感染力.刮弦在我们弹吉他或编曲时,会经常用到,虽然时间很短,但会为你加分不少. 那么我们应该如何演奏刮弦呢,我们先用E5和弦 ...

  5. ZJOI 2014 星系调查(推导)

    题意 https://loj.ac/problem/2201 思路 说白了就是一条路径上有 \(n\) 个二维坐标,求一条直线使得所有点到此直线的距离和最小. 设这条直线为 \(y=kx+b\) ,距 ...

  6. PowerShell自定义函数定义及调用

    PowerShell是一种命令集,也有自己的语法定义及函数.本文主要介绍如何自定义powershell函数及如何调用,当初在写PowerShell自定义函数的时候查阅了很多资料都没找到如何调用自定义函 ...

  7. 关于查询ios的app更新的历史版本记录

    https://www.qimai.cn 推荐七麦数据 可以查询app的各种版本更新内容 由于历史久远忘记了自己app第一次上架的时间 通过这个可以查询

  8. php接口签名验证

    在做一些api接口设计时候会遇到设置权限问题,比如我这个接口只有指定的用户才能访问. 很多时候api接口是属于无状态的,没办法获取session,就不能够用登录的机制去验证,那么 大概的思路是在请求包 ...

  9. HTML5外包注意事项-开发HTML5游戏的九大坑与解决方法剖析

    随着移动社区兴起,势必带动HTML5的革命.未来一两年内,HTML5移动游戏必将呈现大爆发趋势. 以下是整理的HTML5游戏研发.市场趋势以及渠道布局和技术解决方案的内容.希望大家能从本文中找到对HT ...

  10. Manjaro安装后,应该做的操作,仅作为自己备份使用,如有参考不懂,请留言咨询,或Q609916691

    家目录下,通用文件夹名称中英文互转: --(1)中文->英文 export LANG=en_US.UTF-8 xdg-user-dirs-update --force --(2)英文->中 ...