数据库 - 文章列表

  • instr()函数防止sql注入漏洞

      学asp也有一段时间了,这几天一直在写自己的程序,也遇到了好多问题,我就不得不得考虑到一些现在的漏洞,比如,‘ 或 and 1=1等等的一些漏洞!别的先不管,今天我就来说说如何堵这个漏洞!    记得看了一篇文章(不记得什么时候看的了),他用到了instr这个函数,具体的应该是这样的。  If instr(Request("id")," ")>0 or instr(Request("id"),"’")>0 then response.redirect "index.as

  • sql 聚合函数 group by 和having 的使用方法

      在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数,例如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。 SELECT SUM(population) FROM bbc    这里的SUM作用在所有返回记录的population字段上,结果就是该查询只返回一个结果,即所有国家的总人口数。   通过使用GROUP BY 子句,可以让SUM 和 COUNT 这些函数对属于一组的数据起作用。当你指定 GROUP BY region 时, 属于同一个region(地区)的一组

  • 数据库简介

            数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。        数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结

  • 使用存储过程实现站内搜索的功能

    现在很多网站都提供了站内的搜索功能,有的很简单在SQL语句里加一个条件如:where names like ‘%Words%’就可以实现最基本的搜索了。   我们来看看功能强大一点,复杂一点的搜索是如何实现的(在SQL SERVER200/2005通过存储过程实现搜索算法)。   我们把用户的搜索可以分为以下两种:   1.精确搜索,就是把用户输入的各个词语当成一个整体,不分割搜索.   2.像百度,GOOGLE一样的,按空格把输入的每一个词分离,只要包含这些词语,而不管出现的顺序,称为ALL-Word Searc

  • sql日期函数的用法 DATEADD

    DATEADD(day,-6,Duetime) <= GETDATE()   //在DataView中排序            strSql += strWhere + "  ";            strSql += " and Pmn_ExecutePlanDate>getdate()";             &

  • SQL注入攻击的总体思路及应对措施

    SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前市面的防火墙都不会对SQL注入发出警报,如果管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发觉。但是,SQL注

  • MySQL影响查询性能的几个关键参数

    MySQL性能优化涉及到很多方面,本文就一些MySQL中的关键参数进行解说,这些参数在一定程度上是决定MySQL数据库的性能关键参数。   我们在进行数据库管理和开发中经常会遇到性能问题,这就涉及到MySQL的性能优化。通过在网络上查找资料和笔者自己的尝试,我认为以下系统参数是比较关键的:  关键参数一:back_log  要求 MySQL 能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。  back_log 值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望

  • mysql数据库视图与存储过程的用法

    1.MySQL 视图的操作是在新版本数据库才支持的,视图操作的好处是可以简化数据库的查询,特别是一些经常查询的数据表我们可以先创建一个视图,以后要在查询这个类式 的数据表时候,就可以直接查询该视图。这样也可以提高查询的效率。 视图还有个好处就是,你如果改变了基数据表的字段或者值,视图表也会随着改 变,所以我们不用去担心,改变基数据的字段值时候担心视图的数据不同步的问题。例如:创建视图,然后通过视图来查询。create view v3 as SELECT b.sid, b.grade, c.cnameFROM grade b, course cWHERE b.cid = c.cid然后

  • mysql:1548-Cannot load from mysql.proc. The table is probably corrupted

    今天在备份mysql的时候,Dump Sql File..无法执行,mysql报错如下: 1548-Cannot load from mysql.proc. The table is probably corrupted 原因是mysql数据库升级了,解决方法非常简单,运行mysql_upgrade命令即可。此命令会在数据目录下生成一个文本文件mysql_upgrade_info,里面的内容为升级后的数据库版本。

  • access转换为mysql数据库的方法

    access 只能在 windows 下使用这一致命的特性让我深恶痛绝,痛下决心要把 access 转换到 MySQL,但是从网上找了很多文章,都没有直接转换的东西。听说可以利用odbc转,就尝试了一下。先安装好mysql,myodbc,建一个mysql的空数据库,在odbc管理中加上这个数据库,指定名称。用access2000打开数据库,然后选导出,选odbc,选机器数据源,选中自己刚才建立好的mysql odbc 数据源,确定后导出。一次只能倒一个表。。。。。。。。。。。终于完了,现在成功了吗?把程序中的数据源改到刚倒好的mysql odbc上,发现到处都是错误,原来mysql对表的大小写