📜  如何在python中建立关系(1)

📅  最后修改于: 2023-12-03 15:38:36.330000             🧑  作者: Mango

如何在Python中建立关系

关系代表了不同实体之间的连接,是数据库设计中非常重要的一部分。在Python中,我们可以使用不同的库来建立关系。

下面是几种常见的建立关系的方法:

1. 使用SQLite建立关系

SQLite是一个轻量级的关系型数据库管理系统,可以在Python中使用内置的sqlite3库来创建和连接SQLite数据库。以下是简单的SQLite数据库建立和查询代码示例:

import sqlite3

# 连接到数据库
conn = sqlite3.connect('example.db')

# 创建表格
conn.execute('''CREATE TABLE COMPANY
       (ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL,
       ADDRESS        CHAR(50),
       SALARY         REAL);''')

# 插入数据到表格
conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (1, 'Paul', 32, 'California', 20000.00 )")

# 查询数据
cursor = conn.execute("SELECT id, name, address, salary from COMPANY")
for row in cursor:
   print "ID = ", row[0]
   print "NAME = ", row[1]
   print "ADDRESS = ", row[2]
   print "SALARY = ", row[3], "\n"

# 关闭数据库连接
conn.close()
2. 使用MySQL建立关系

MySQL是一个流行的开源关系型数据库管理系统,使用Python连接MySQL需要安装Python的MySQLdb库。以下是简单的MySQL数据库建立和查询代码示例:

import MySQLdb

# 连接到数据库
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# 创建表格
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
sql = """CREATE TABLE EMPLOYEE (
         FIRST_NAME  CHAR(20) NOT NULL,
         LAST_NAME  CHAR(20),
         AGE INT,  
         SEX CHAR(1),
         INCOME FLOAT )"""

cursor.execute(sql)

# 插入数据到表格
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) \
       VALUES ('Mac', 'Mohan', 20, 'M', 2000)"
try:
   cursor.execute(sql)
   db.commit()
except:
   db.rollback()

# 查询数据
sql = "SELECT * FROM EMPLOYEE \
       WHERE INCOME > '%d'" % (1000)
try:
   cursor.execute(sql)
   results = cursor.fetchall()
   for row in results:
      fname = row[0]
      lname = row[1]
      age = row[2]
      sex = row[3]
      income = row[4]
      print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \
             (fname, lname, age, sex, income )
except:
   print "Error: unable to fetch data"

# 关闭数据库连接
db.close()
3. 使用MongoDB建立关系

MongoDB是一个高性能的、面向文档的开源NoSQL数据库系统,可以在Python中使用pymongo库来创建和连接MongoDB数据库。以下是简单的MongoDB数据库建立和查询代码示例:

import pymongo

# 连接到数据库
myclient = pymongo.MongoClient("mongodb://localhost:27017/")

# 创建数据库
mydb = myclient["mydatabase"]

# 创建集合
mycol = mydb["customers"]

# 插入数据到集合
mydict = { "name": "John", "address": "Highway 37" }
x = mycol.insert_one(mydict)

# 查询数据
for x in mycol.find():
    print(x)

# 关闭数据库连接
myclient.close()

总结:

无论您是使用SQLite、MySQL还是MongoDB,Python都提供了丰富的库来帮助您建立关系。这些库的使用非常简单,只需几行代码即可创建和查询数据库中的关系。如果您需要在应用程序中使用关系,请使用这些库中的一种。