Python for Infomatics 第14章 数据库和SQL应用一(译)
14.1 什么是数据库
数据库一种存储结构数据的文件。绝大多数数据库类似字典——映射键和值的关系。最大的区别是数据库是保存在硬盘或其它永久性的存储上,所以在程序结束后它仍然存在。而保存在内存中的字典容量受限于计算机的内存配置,所以数据库可以比字典存储更多的数据。
类似字典,数据库软件在插入和访问数据时非常迅速,即使是庞大的数据。通过创建数据索引,数据库软件维持它的性能,并允许计算机快速跳至一个特定入口。
目前有很多不同目的的数据库系统,包括:Oracle, MySQL, 微软的SQL Server, PostgreSQL和SQLite。因为SQLite是一个常用数据库,且在Python中内置,所以本书重点关注SQLite。SQLite被设计用于内嵌应用程序,为应用程序提供数据库支持。例如火狐浏览器和其它产品一样,在内部使用SQLite数据库。
你可以访问 http://sqlite.org/ 获得更多SQLite 的信息。
SQLite非常适合在信息学中处理解决问题的数据,例如在本章中我们描述的Twitter爬虫软件。
14.2 数据库的概念
当你第一次看到数据库,它看起来像由多张表组成的电子表格。数据库中主要的数据结构有:表、行和列。在关系数据库的技术说明中,表、行和列被更正式的称为关系、元组和属性。在本章我们使用非正式的术语。

14.3 SQLite管理器-火狐插件
虽然本章的重点是使用Python来操作SQLite数据库中的数据,但是使用一个叫做SQLite Database Manager的火狐插件可以更加便捷地完成操作。这个插件可以免费从以下地址获取:
https://addons.mozilla.org/en-us/firefox/addon/sqlite-manager/
你可以轻松地利用浏览器在数据库中创建表,插入和编辑数据,或者运行简单的SQL查询。
在某种程度上,数据库管理器类似于处理文本文件的文本编辑器。当你想着一个文本文件上做一个或者很多的操作时,你可以直接用一个文本编辑器打开它,并进行修改。但当你有很多对方需要修改时,经常性你会编写一个简单的Python程序。当你进行数据库处理时,你会发现相同的模式。你会用数据库管理器做简单的操作,而用更便捷的Python程序来做更加复杂的操作。
注:文章原文为Dr. Charles Severance 的 《Python for Informatics》。
Python for Infomatics 第14章 数据库和SQL应用一(译)的更多相关文章
- Python for Infomatics 第14章 数据库和SQL应用二(译)
14.4 创建数据库和表 相比Python的列表和字典,数据库需要更多的已定义结构. 在我们创建数据库表之前,我们必须预先告诉数据库表和列的命名,以及计划保存到列中和数据类型.当数据库软件预先知道每列 ...
- Python for Infomatics 第14章 数据库和SQL应用三(译)
14.5 SQL 总结 到目前为止,我们在Python示例程序中使用了SQL,并且涉及了许多SQL基础.在这一小节中,我们特别审视SQL语言,并对其语法进行回顾. 虽然有很多不同的数据库供应商,但因S ...
- php大力力 [016节] 兄弟连高洛峰php教程(2014年 14章数据库章节列表)
2015-08-25 php大力力016 兄弟连高洛峰php教程(2014年 14章数据库章节列表) [2014]兄弟连高洛峰 PHP教程14.1.1 复习数据库 15:58 [2014]兄弟连高洛 ...
- 《SQL 基础教程》—第一章:数据库与 SQL
导言 这一章的内容如下: 数据库简介 SQL 概要 表的创建 表的删除与更新 数据库简介 定义: Database, 是大量数据的集合Database Management System,是用于管理数 ...
- Python使用cx_Oracle模块操作Oracle数据库--通过sql语句和存储操作
https://www.jb51.net/article/125160.htm?utm_medium=referral Python使用cx_Oracle调用Oracle存储过程的方法示例 http ...
- Python for Infomatics 第13章 网页服务四(译)
这几天因为其他事务,打断了自己的学习计划,今天继续我的翻译,避免又中途而废. 注:文章原文为Dr. Charles Severance 的 <Python for Informatics> ...
- Python for Infomatics 第12章 网络编程一(译)
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 本书中的许多例子关注的是读取文件 ...
- Python for Infomatics 第13章 网页服务三(译)
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.6 应用程序接口API 现 ...
- Python for Infomatics 第13章 网页服务二(译)
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.4 JavaScript ...
随机推荐
- 第二篇 基于.net搭建热插拔式web框架(沙箱的构建)
上周五写了一个实现原理篇,在评论中看到有朋友也遇到了我的问题,真的是有种他乡遇知己的感觉,整个系列我一定会坚持写完,并在最后把代码开源到git中.上一篇文章很多人看了以后,都表示不解,觉得不知道我到底 ...
- JS trim
JS 去掉左右两边空格 /** * 去掉左右两边空格 * @param str * @returns {*} */function myTrim(str){ return str.replace(/( ...
- angularJS实践过程中出现的问题总结
同名服务 在一次项目里,之前是同事写的.我有一次在异步获取服务器上的数据时,习惯把api地址写在一个服务Store里,但是程序总是返回Store.api.get()里的get is undefined ...
- 解决ssh localhost中root@localhost:要求输入密码问题(已经进行了无密码设置登录)
首先删除~/.ssh目录下的3个文件,如下 id_rsa authorized_keys id_rsa.pub 然后 exit # 退出刚才的 ssh localhostcd ~/.ssh/ # 若没 ...
- vector
.vector是一个能够存放任意类型的动态数组,能够增加和压缩数据. .vector容器最擅长的工作是: 利用位置索引存储容器中的单个元素. 以任何顺序迭代容器中的元素. 在容器的末尾追加和删除元素. ...
- 【python】nuitka封装python
官网:http://nuitka.net/doc/user-manual.html python打包工具对比:http://blog.csdn.net/qwemicheal/article/detai ...
- ios常用的第三方库
ios开发中有可能用到的第三方库进行记录一下: 注:资料信息来源于网络 自己整理 https://developer.apple.com/reference(苹果官方文档) https://gith ...
- MySQL 5.7 安装教程
自序:最近又要重新用上Mysql,在有道笔记找了以前自己记录怎么安装mysql5.7的笔记,发现那个时候记得笔记比较随意,看的比较费劲,现在决定重新在博客记录一下,以便以后自己查阅的时候更加方便. 1 ...
- H5+ 移动app学习之二 Native.js
Native.js技术,简称NJS,是一种将手机操作系统的原生对象转义,映射为JS对象,在JS里编写原生代码的技术.如果说Node.js把js扩展到服务器世界,那么Native.js则把js扩展到手机 ...
- mysqli操作数据库
1 连接数据库:可以使用对象或函数来连接(我们这里主要用mysqli对象,附带着函数连接) //创建mysqli对象(也可以叫做资源句柄) $_mysqli = new mysqli(); //连接数 ...