##sql语法介绍##
1.一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。
下面的例子是一个名为 “Persons” 的表:
Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。
##SQL SELECT 语句##
SELECT 语句用于从表中选取数据。
结果被存储在一个结果表中(称为结果集)。
SQL SELECT 语法
SELECT 列名称 FROM 表名称
SQL SELECT 实例
如需获取名为 “LastName” 和 “FirstName” 的列的内容(从名为 “Persons” 的数据库表),请使用类似这样的 SELECT 语句:
SELECT LastName,FirstName FROM Persons
“Persons” 表:
Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
结果:
LastName FirstName
Adams John
Bush George
Carter Thomas
SQL SELECT * 实例
现在我们希望从 “Persons” 表中选取所有的列。
请使用符号 * 取代列的名称,就像这样:
SELECT * FROM Persons
提示:星号(*)是选取所有列的快捷方式。
结果:
Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
在结果集(result-set)中导航
由 SQL 查询程序获得的结果被存放在一个结果集中。大多数数据库软件系统都允许使用编程函数在结果集中进行导航,比如:Move-To-First-Record、Get-Record-Content、Move-To-Next-Record 等等。
例子:
return语句
import sqlite3
def dict_factory(cursor, row):
d = {}
for idx, col in enumerate(cursor.description):
d[col[0]] = row[idx]
return d
connect = sqlite3.connect(“testsqlite.db”)
connect.row_factory = dict_factory
cursor = connect.cursor()
cursor.execute(“select * from employee;”)
print(cursor.fetchall())