C# ADO.NET基础&实战
什么是ADO.NET:数据库访问技术!
作用:通过程序来连接访问数据库!
一、基础:
using System.Data.SqlClient; //数据库连接命名空间
string connection = "server =.; Database =Data0908; user =sa; pwd =123;"; //连接字符串,固定关键字;
SqlConnection Conn = new SqlConnection(connection); //连接数据库类
SqlCommand Comm = Conn.CreateCommand; //数据库操作类
Conn.ConnectionText = "insert into Users values(' ',' ',' ',' ')"; //连接此Sql语句,Sql语句可以进行增删改查等操作
Conn.Open(); //开启数据库
****开启数据库务必关闭数据库
int zx = Comm.ExectueNonQuery; //执行上一句连接的Sql语句,此方法适用于增删改
****返回值是一个int类型的值!
Conn.Close(); //关闭数据库
if( zx > 0 ) //如果zx返回的值大于0,那么执行成功添加,否则执行失败
Console.WriteLine("执行成功");
else
Console.WriteLine("执行失败");
SqlDataReader DR = Comm.ExectueReader; //执行上一句连接的Sql语句,此方法适用于查
****返回值是一个bool类型的值!
if(DR.HasRows) //DR.HasRows相当于返回一个true
Console.WriteLine("执行成功");
else
Console.WriteLine("执行失败");
要点:
1、SqlConnection:和数据库交互必须连接他;
2、SqlCommend:成功建立连接后可进行增删改查等命令;
3、SqlDataRead:读取一行字符串的Sql语句;
二、实战:
1、攻击
字符串攻击:a'; delete from user --
2、防御
防字符串攻击:
Comm.CommandText = " select * from Users where UserName = @a"; //利用@占位符占一个位置
Comm.Parameters.Clear(); //清空内容
Comm.Parameters.Add("@a", username); //username用户输入的内容,输入什么就是什么,不会被当成代码执行
C# ADO.NET基础&实战的更多相关文章
- ADO.NET基础03
数据库和VS的连接,实现数据的同步,让用户的一切信息都可以在数据库中留下记录. ADO.NET基础 它是连接所有数据库的一种特殊的技术,提供对不同的数据库统一操作接口. 在VS中也可以添加数 ...
- javamail模拟邮箱功能发送电子邮件-基础实战篇(javamail API电子邮件实例)
引言: JavaMail 是一种可选的.能用于读取.编写和发送电子消息的包 JavaMail jar包下载地址:http://java.sun.com/products/javamail/downlo ...
- .Net Core 系列:2、ADO.Net 基础
目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...
- 有关ADO.NET基础中的基础的熟悉过程
现在对于ADO.NET基础的理解与记忆并不严谨和完善 所以,只写一点关于自己的理解,嗯,一种去转换思维理解的方法吧,算是吧 希望各位前辈或者同学,积极指出其中的错误和偏差 个人对于刚接触的ADO.NE ...
- MySQL的初次见面礼基础实战篇
[版权申明] http://blog.csdn.net/javazejian/article/details/61614366 出自[zejian的博客] 关联文章: MySQL的初次见面礼基础实战篇 ...
- 如鹏网学习笔记(六)ADO.Net基础
ADO.Net基础 一.ADO.Net简介 1,程序要通过SQL语句自动化的操作数据库,必须要用一个类库, 类库要提供execute("insert into ...")/exec ...
- python基础 实战作业 ---Excel基本读写与数据处理
代码地址如下:http://www.demodashi.com/demo/11650.html 看完本篇需要: 10min 作业练习需要: 0.5h~3h(依练习者对python熟悉程度而定) 看完本 ...
- ADO.NET基础开发
ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写.ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供了一个面向对象的数据访问架构, ...
- Spring Cloud Alibaba | Sentinel:分布式系统的流量防卫兵基础实战
Spring Cloud Alibaba | Sentinel:分布式系统的流量防卫兵基础实战 Springboot: 2.1.8.RELEASE SpringCloud: Greenwich.SR2 ...
随机推荐
- python基础学习笔记(一)
安装与运行交互式解释器 在绝大多数linux和 UNIX系统安装中(包括Mac OS X),Python的解释器就已经存在了.我们可以在提示符下输入python命令进行验证(作者环境ubuntu) f ...
- Linux内核及分析 第三周 Linux内核的启动过程
实验过程: 打开shell终端,执行以下命令: cd LinuxKernel/ qemu -kernel linux-3.18.6/arch/x86/boot/bzImage-initrd rootf ...
- 2017-2018-2 1723《程序设计与数据结构》实验四 & 实验五 & 课程总结 总结
作业地址 实验四作业:https://edu.cnblogs.com/campus/besti/CS-IMIS-1723/homework/1943 提交情况如图: 实验五作业:https://edu ...
- Ajax写成绩批量录入
1.jsp,ajax的循环调用,必须要递归,否则会出错. <%@ page language="java" import="java.util.*" pa ...
- 个人项目Individual Project:迷宫求解
源码的github链接: https://github.com/zhangxue520/test 1.1问题描述: a.问题描述:以一个m * n的长方阵表示迷宫,0和1分别表示迷 ...
- 【目标跟踪】相关滤波算法之MOSSE
简要 2010年David S. Bolme等人在CVPR上发表了<Visual Object Tracking using Adaptive Correlation Filters>一文 ...
- 5.1 四则运算单元测试j
由于上个星期请假没上课,这个星期回来才知道作业,时间比较赶,个人能力又不足,作业质量不是很好 Calculator.java import java.util.Scanner; public clas ...
- spring 整合
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- ThreadPoolExecutor参数
1.ThreadPoolExecutor个参数的意义(类上的注释内容) * @param corePoolSize the number of threads to keep in the* pool ...
- js的forEach遍历不可以给value赋值
可以给value的对象赋值,如果想共用内存地址可以使用for循环更改数组内对象的值: