zoukankan      html  css  js  c++  java
  • 在ADO.NET中使用参数化SQL语句访问不同数据库时的差异

    在ADO.NET中经常需要跟各种数据库打交道,在不实用存储过程的情况下,使用参数化SQL语句一定程度上可以防止SQL注入,同时对一些较难赋值的字段(如在SQL Server中Image字段,在Oracle中Clob字段等)使用参数化SQL语句很容易就能赋值,所以本人经常在ADO.NET中使用参数化SQL语句,近几年来陆续跟SQL Server/Oracle/ MySQL 打交道,积累了一些心得,现在整理出来供大家参考。

    表架构如下:

    create table Table1 (
       Column1             
    varchar(60)          not null,
       Column2             
    varchar(60)          not null
       Column3             
    int                      not  null default 0
    )

    使用ado.net参数化查询语句,向Table1中插入一条记录。

    MySql:         string sql = "insert into Table1(Column1,Column2,Column3)values(?Column1,?Column2,?Column3)";

    Sql Server:  string sql = "insert into Table1(Column1,Column2,Column3)values(@Column1,@Column2,@Column3)";

    Oracle:        string sql = "insert into Table1(Column1,Column2,Column3)values(:Column1,:Column2,:Column3)";

  • 相关阅读:
    AtomicInteger原理分析
    packageinfo.java介绍
    SpringBoot 日志、配置文件、接口数据脱敏
    Gulp自动化构建分析
    RPC本质思考
    ES6 之 let 与 const
    Java属性转换工具分析
    AMQP协议模型及相关组件介绍
    Spring Bean生命周期分析
    PHP 脚本后台执行
  • 原文地址:https://www.cnblogs.com/moonlight-zjb/p/3493766.html
Copyright © 2011-2022 走看看