zoukankan      html  css  js  c++  java
  • SQL注入以及如何防止和索引

    SQL注入产生的原因:程序开发过程中不注意规范书写sql语句和对特殊字符进行过滤,导致客户端可以通过全局变量POST和GET提交一些sql语句正常执行。

    防止SQL注入:

    1、开启配置文件中的magic_quotes_gpc和magic_quotes_runtime设置

    2、执行sql语句使用addslashes进行sql语句转换

    3、Sql语句书写尽量不要省略小引号和单引号

    4、过滤掉sql语句中的一些关键字:update、insert、delete、select、*

    5、提高数据库表和字段的命名技巧,对一些重要的字段根据程序的特点命名,取不易被猜到的。

    6、Php配置文件中设置register_globals为off,关闭全局变量注册

    7、控制错误信息,不要再浏览器上输出错误信息,将错误信息写到日志文件中。

     

    索引类别::::

    主键索引;外键索引;唯一索引;联合索引;普通索引;组合索引

    索引的不足

    1、虽然能够大大提高查询速度,但是会降低更新表的速度,(它不仅要更新保存数据,还要索引一次)

    2、建立索引会占用磁盘空间的索引文件,如果有大量的数据表就要花时间建立更优秀的索引,或者优化查询语句。

    索引是使用的注意事项:

    1、索引不会包含NULL。

    2、使用短索引。

    3、不要在列上进行计算

    .........................。。

     

     

     

  • 相关阅读:
    常见压缩/解压缩及打包命令
    黑盒测试和白盒测试
    基础命令的操作

    转]DLL-多个进程间共享动态链接库的原理
    Ansi UNICODE,GBK,UTF-8区别
    Cppunit 源码 SynchronizedObject
    二分查找实现
    Androdi 开发学习四 Activity和Intent
    Android开发学习三:adb启动失败
  • 原文地址:https://www.cnblogs.com/yaqiangyinsi/p/6075417.html
Copyright © 2011-2022 走看看