数据库混淆概念(关系)

之前,在看书的时候(书上讲的不是人话😂),感觉是书上某些词语没有解释清楚,导致练习题有些棘手hhh

主码   < 候选码  < 码

元组理解为一张表的某一行,属性理解为一张表的某一列,属性名就是列的名字(字段)

1(码):码是可以确定一个元组的所有信息的属性名或属性名组

例如在 { a, b, c, d } 中,

假设知道 a 的值就能确定  a, b, c, d  的值,

假设知道 c, d 的值就可以确定  a, b, c, d  的值,

那么 { a } 就是码,{ c, d } 就是码。

并且 { a, b }, { a, c }, { a, b, c }, { a, b, c, d } 等也都是码,因为它们也可以确定一个元组的所有值,即使很多余。

2(候选码):候选码的真子集中不存在码,候选码可以有多个。(感觉是唯一标识,不可再分的集合hhh)

就上面的例子而言,{ a } 是候选码,{ c, d } 是候选码,因为它们的真子集中不存在码。

而诸如 { a, b } 并不是候选码,因为它的真子集中含有 { a }, 且 { a } 是码。

3(主码):主码就是主键的意思,主码是任意一个候选码。

还是上面的例子,主码是候选码 { a }, { c, d } 中的其中一个。

既可以是 { a }, 也可以是 { c, d }。 
转载于:数据库中 码、候选码、主码 的区别_cry_shoulder的博客-优快云博客_数据库候选码

### 如何使用Python编写爬虫抓取B番剧视频 #### 环境准备 为了顺利进行数据采集工作,建议先准备好开发环境。推荐使用 Python 3.x 版本并安装必要的第三方库,如 `requests` 和 `BeautifulSoup4` 或者更为强大的框架如 Scrapy 来简化网页解析过程[^2]。 #### 编写基础爬虫脚本 下面是一个简单的例子来获取 B 上某个特定页面的内容: ```python import requests from bs4 import BeautifulSoup def fetch_page(url): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)', } response = requests.get(url, headers=headers) if response.status_code == 200: soup = BeautifulSoup(response.text, "html.parser") return soup else: raise Exception(f"Failed to load page {url}") ``` 此函数会返回给定 URL 页面经过解析后的 HTML 文档对象模型(DOM),可以用来定位所需的信息节点。 #### 抓取具体信息 对于番剧来说,通常需要关注的是标题、播放量、弹幕数量等基本信息。可以通过观察目标网结构找到这些元素对应的标签名称及其属性值,在上述 DOM 中查找相应位置的数据项。例如: ```python soup = fetch_page('https://www.bilibili.com/anime') titles = [item.string.strip() for item in soup.select('.title')] play_counts = [int(item['data-play']) for item in soup.select('.play')] danmu_counts = [int(item['data-danmaku']) for item in soup.select('.danmaku')] ``` 这里假设 `.title`, `[data-play]`, `[data-danmaku]` 是实际存在的 CSS Selectors 表达式用于匹配到相应的HTML元素。 #### 处理分页或多级页面链接 如果要访问多个列表页或是深入某条记录下的子页面,则需注意构建合理的URL模式,并循环调用之前定义好的请求方法完成遍历操作。比如当遇到带有参数化的路径时(如 `/anime?page=1`),可通过改变查询字符串中的数值实现翻页效果;而对于详情页而言,则可能涉及到正则表达式的运用以提取出完整的跳转地址。 #### 数据存储方式的选择 考虑到后期可能会对所获资料做进一步加工处理甚至建立小型数据库供其他应用读取,因此合理规划好本地缓存机制非常重要。可以选择 CSV 文件作为临时载体保存原始文本串形式的结果集,也可以考虑采用 SQLite 这样的轻型关系型数据库管理系统来进行持久化管理。 #### 遵守robots协议与道德准则 在实施任何网络爬行活动前都应该仔细阅读目标点发布的 robots.txt 文件了解允许范围内的行为边界,同时尊重版权方利益不滥用自动化工具干扰正常服务秩序。另外还需特别留意个人信息保护法规的要求以免触犯法律风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值