1. SQL 简介
SQL 支持下列类别的命令:
数据定义语言(DDL):create, alter, drop
数据操纵语言(DML):insert, delete, update, select
事务控制语言(TCL): commit, rollback, savepoint
数据控制语言(DCL): grant, revoke
笨鸟先飞
PySpider 是一个基于 Python 的爬虫框架,也就是使用该框架需要懂得一定的 Python 语言。关于 PySpider 的中文文档可以访问 pyspider中文文档。
我们可以在 PySpider 提供的界面上编写和运行 Python 脚本,同时也支持 MySQL, MongoDB, Redis, SQLite, Elasticsearch各种数据库引擎。本文档将实现将 v2ex 中爬取的数据存放在 MySQL 数据库中。下面就先开始从 PySpider 的环境安装开始吧。
全局配置文件的元素顺序:
properties, settings, typeAliases, typeHandlers, objectFactory, objectWrapperFactory, reflectorFactory, plugins, environments, databaseIdProvider, mappers
properties属性可以给系统配置一些运行参数,可以放在XML文件或者properties文件中。
在上一次学习笔记中,我们是将MySQL数据库的一些信息直接写在全局配置文件中,下面我们将这些数据库的一些信息抽取出来。
首先编写properties文件dbconfig.properties:
下面显示的是元素的一些属性:
如果使用JDBC或者类似于Hibernate的其他框架,很多时候要根据需要去拼装SQL。比如我要查询角色,可以根据角色名称或者备注等信息查新,但是当我们不输入名称时原本使用名称做查询条件的情况就不适用了。而MaBatis提供了对SQL语句动态的组装能力,MyBatis 采用功能强大的基于 OGNL 表达式来简化操作。
MyBatis的动态SQL包括以下几种元素,如下所示:
元素 | 作用 | 备注 |
---|---|---|
if | 判断语句 | 单条件复分支判断 |
choose( when, otherwise) | 相当于Java中的switch和case语句 | 多条件分支判断 |
tirm ( where, set) | 辅助元素,用于处理特定的SQL拼装问题,比如去掉多余的and、or等 | 用于处理SQL拼装问题 |
foreach | 循环语句 | 在in语句等列举条件常用 |