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应用一(译)的更多相关文章

  1. Python for Infomatics 第14章 数据库和SQL应用二(译)

    14.4 创建数据库和表 相比Python的列表和字典,数据库需要更多的已定义结构. 在我们创建数据库表之前,我们必须预先告诉数据库表和列的命名,以及计划保存到列中和数据类型.当数据库软件预先知道每列 ...

  2. Python for Infomatics 第14章 数据库和SQL应用三(译)

    14.5 SQL 总结 到目前为止,我们在Python示例程序中使用了SQL,并且涉及了许多SQL基础.在这一小节中,我们特别审视SQL语言,并对其语法进行回顾. 虽然有很多不同的数据库供应商,但因S ...

  3. php大力力 [016节] 兄弟连高洛峰php教程(2014年 14章数据库章节列表)

    2015-08-25 php大力力016 兄弟连高洛峰php教程(2014年 14章数据库章节列表) [2014]兄弟连高洛峰 PHP教程14.1.1 复习数据库  15:58 [2014]兄弟连高洛 ...

  4. 《SQL 基础教程》—第一章:数据库与 SQL

    导言 这一章的内容如下: 数据库简介 SQL 概要 表的创建 表的删除与更新 数据库简介 定义: Database, 是大量数据的集合Database Management System,是用于管理数 ...

  5. Python使用cx_Oracle模块操作Oracle数据库--通过sql语句和存储操作

    https://www.jb51.net/article/125160.htm?utm_medium=referral  Python使用cx_Oracle调用Oracle存储过程的方法示例 http ...

  6. Python for Infomatics 第13章 网页服务四(译)

    这几天因为其他事务,打断了自己的学习计划,今天继续我的翻译,避免又中途而废. 注:文章原文为Dr. Charles Severance 的 <Python for Informatics> ...

  7. Python for Infomatics 第12章 网络编程一(译)

    注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 本书中的许多例子关注的是读取文件 ...

  8. Python for Infomatics 第13章 网页服务三(译)

    注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.6 应用程序接口API 现 ...

  9. Python for Infomatics 第13章 网页服务二(译)

    注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.4 JavaScript ...

随机推荐

  1. js时间Date对象介绍及解决getTime转换为8点的问题

    前言 在做时间转换的时候,发现用“2016-04-12”转出来的时间戳是 2016-04-12 08:00的时间点,而不是0点. new Date('2016-04-12').getTime(); ) ...

  2. json和jsonp

    JSON是一种数据交换格式!   JSONP是一种依靠开发人员的聪明才智创造出的一种非官方跨域数据交互协议!   一般使用JSON来传数据,靠JSONP来跨域.   JSON的优点: 1.基于纯文本, ...

  3. ovirt配置为cas登录

    准备工作 Ovirt测试机.CAS服务器.AD服务器 cas.crt -- CAS服务器的CA证书 allwinner.cer -- CAS服务器的证书颁发机构根证书 Ovirt测试机要求:apach ...

  4. css3伪类、伪元素选择器---nth-child()和nth-of-type()选择器的区别

    p:nth-child(2) 要满足两个条件,1:选择的是p元素的父元素的第二个子元素   2:选择的第二个子元素必须是p元素,如果不满足,则将不显示 p:nth-of-type(2) 选择父元素下的 ...

  5. smali调试总结

    一. 开始调试 smali调试从最早的重打包用各种JAVA IDE进行调试, 到后来的可以不用重打包用xposed插件, 在到最后的修改系统源码刷机或者修改boot.img刷机一劳永逸 apk可调试可 ...

  6. powershell批量设置权限

    批量设置权限 $acl=get-acl .\demo Get-ChildItem .\Documents -Recurse -Force|Set-Acl -AclObject $acl

  7. nginx负载SignalR

    前几天写了篇聊天室服务器扩展随想,今天有空开始实施第一步, 聊天服务器用SignalR self-host,负载用nginx,当然这只是测试,实际使用可能还需要修改. 第一步,搭好SignalR服务, ...

  8. docker 目录迁移

    (ubuntu 12.04) 默认路径 /var/lib/docker  --> /data/docker root@node1:~# service docker stop root@node ...

  9. Appium for iOS setup

    windows下appium设置 之前研究了一段时间的appium for native app 相应的总结如下:                                           ...

  10. Installing Selenium and ChromeDriver on Ubuntu

    I recently got Selenium, Google Chrome, and ChromeDriver installed and working on a DigitalOcean ins ...