array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 网站入侵与脚本攻防 - 爱码网

读网站入侵和脚本攻防笔记

据不完全统计,每20秒就会发生一件网络入侵事件。全球损失大概数百亿;我国百分之九十的网站存在安全问题,这些黑客通过web服务端口80端口进行攻击,web攻击可以改变站点的目录,严重的盗取重要客户的资料。

常见的脚本攻击有:sql脚本注入攻击等;

明白几个SQL中用到的关键词:数据表(table)、记录(data record)、字段(field)、查询(query)、SQL、索引(index)和键(key).

数据表(table):指的是用来存放实际相关数据的框架结构,这种数据表里面的每一行被称为一条数据记录(data record),例如:在我们的网站中有一张是用户表,这个表中可能包含姓名、电话、性别、等多个字段(field)。对于一个数据库的描述被称为数据库模型(database model),它是由这个数据库里面的全体数据表及他们的所有的字段、关系和索引构成的。数据库模型不仅要定义所涉及的各种数据结构的整体框架,还必须同时给出将存放于此处的数据存储格式。

查询(query)和SQL:查询是通过各种SQL指令执行的,SQL指令负责完成筛选和提取结果数据的工作。

索引(index)和主键(primary key):随着数据量的增大,数据库数据量的增大,查询速度往往会因为数据量而受很大的影响,因此为了提高查询速度,需要为数据建立适当的索引。索引虽然提高了速度但是也是存在一些问题的:增加数据库文件在硬盘上的空间占用量。索引必须随原始数据的改变而同步更新才有实际的意义,这样的话在读取数据的时候索引是可以节约时间的;但是在输入或者修改数据的时候,索引反而会降低速度。

数据库管理系统(Database Management System)是一种操作和管理数据库的软件,是用于建立、使用和维护数据库,简称DBMS。目前数据模型比较重要的3中类型:分级模型、网络模型和关系模型。基于关系模型的数据库管理系统,被称为关系型数据库管理系统,简称(RDMS)。目前比较著名的有:Oracle、Sybase、Microsoft SQL Server、Microsoft Access、Mysql.

下面介绍几条重要的SQL语句:

1.数据记录

sql="select * from table where 字段名=字段值 order by 字段名 [desc]";

sql="select * from table where 字段名 like '%字段值%' order by 字段名 [desc]";

sql="select top 10 * from table where 字段名 order by 字段名 [desc]";

sql="select * from table where 字段名 in ('值1','值2','值3')";

sql="select * from table where 字段名 between 值1 and 值2"

2.更新数据记录

sql="update table set 字段名=字段值 where 条件表达式"

sql="update table set 字段1=值,字段2=值2......where 条件表达式"

3.删除添加数据

sql="delete from table where 条件表达式"

sql="delete from table"(将删除所有数据)

sql="insert into table (字段1,字段2,字段3 ....) values (值1,值2,值3.....)"

sql="insert into 目录table select * from 源table"(把源数据表的记录添加到目录数据表)

4.统计函数

avg(字段名) 平均值

count(*|字段名) 数据表行数

max(字段名) table 栏最大值

min(字段名) table 栏最小值

sum(字段名)把数据栏的值相加

sql="select sum(字段名) as 别名 from table where 条件表达式"

set rs=conn.excute(sql)

5.数据表的建立和删除

create table 数据表名称(

字段1 类型1 (长度),

字段2 类型2 (长度),.........

);

删除数据表

drop table 数据表名(永久性删除)

 

 

 

 

相关文章: