• 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用户输入的内容,输入什么就是什么,不会被当成代码执行

  • 相关阅读:
    【转】如何用一个实例来探讨嵌入式软件架构设计
    【转】虽然话语浅显,还算可以
    【转】嵌入式为什么没有嵌入式软件架构师?
    【转】嵌入式应了解的知识点
    嵌入式核心课程(五大模块)
    Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法
    CSS+DIV 设计一个简单的个人网页界面
    DIV+CSS制作二级横向弹出菜单,略简单
    DAO接口及实现类
    JSP 数据库连接类 MySql数据库
  • 原文地址:https://www.cnblogs.com/xinchenhui/p/7828693.html
Copyright © 2020-2023  润新知