为批量导入准备数据(成批导入)
手动录入几百甚至上千行数据(教师、学生、教室、课程……)很少是明智之举。Omniscol支持批量导入:从任意电子表格(Excel、Google Sheets、Numbers、Calc……)复制数据后直接粘贴,格式为CSV或TSV。点击各实体列表顶部的 按钮即可进行导入。少数列表只能导出数据,但大多数都支持导入。
可以导入哪些数据?
| 实体 | 界面 | 常见数据量 |
|---|---|---|
| 教师 | 以CSV格式导出数据 | 10 - 1000 |
| 学生 | 以CSV格式导出数据 | 50 - 10 000 |
| 教室 | 以CSV格式导出数据 | 10 - 500 |
| 自定义科目 | 以CSV格式导出数据 | 10 - 1000 |
| 课表中的课时 | 以CSV格式导出数据 | 100 - 10 000 |
准备文件
基本规则:
- 一行对应一个实体。 不要合并单元格,不要使用多行表头。
- 遵循Omniscol要求的列顺序。 导入界面会按目标顺序显示模板列,您也可以在Omniscol中重新排列这些列,使其与源表格的顺序一致——这样从Excel或Google Sheets复制粘贴时就很顺畅,无需改写原文件。
- 部分列为只读。 这些列显示为灰色,仅用于导出数据。第一列通常是该数据已保存在数据库中的标识符。
- 标有“*”的列为必填。 如果缺少必填字段,该行将被忽略(新建时不导入;若该数据已存在于数据库中,则会被删除)。
- 列表型单元格中的内部分隔符不受限制(一门课程的多位教师、多个小组、多间教室):逗号、分号、斜杠均可。
- 内置AI会清理数据,但能力有限:请尽量提供干净、无歧义的数据,否则可能出现意料之外的结果。
各实体的常用字段
教师
- 名字、姓氏(必填)。
- 电子邮件(建议填写,用于发送邀请)。
- 工号 / 外部ID(选填,便于追溯)。
- 任教科目(列表,分隔符不受限制)。
- 服务时间(每周计划授课小时数)。
- 主校区(如有多个校区)。
学生
- 名字、姓氏(必填)。
- 电子邮件(建议填写)。
- 学号(来自学生信息系统,有助于避免重名混淆)。
- 年级 / 班级。
- 小组(选修课、子小组)。
- 状态(在读、预注册、停用)。
教室
- 名称(必填)。
- 校区(多校区时必填;否则Omniscol归入默认校区)。
- 容量。
- 专业教室类型(列表)。
- 教学楼(自由填写)。
- 标签 / 评论。
课表中的课时
- 班级 + 科目(至少需要这两项)。
- 时长(缺省时由开始和结束时间推算)。
- 星期、开始时间、结束时间(用于预先排定位置;也可留空,之后再排)。
- 小组(选填)。
- 课时类型(习题课、实验课、讲授课、考试……)。
- 教师(分隔符不受限制)。
- 教室(分隔符不受限制——是的,同一课时支持多教室(一个课时占用多间教室))。
- 资源。
- 交替周(格式为
A/B、1/2等)。 - 评论(自由文本)。
准备完成之后
导入流程取决于目标界面。通常,导入后界面会整体刷新并显示新数据。
要导入课表中的课时,请参见 通过表格批量导入课程,其中介绍了分四步完成的专用向导。
导出
同一套内置表格功能也可用于提取数据。有以下几种方式:
- 复制粘贴到外部电子表格(自动采用TSV格式)。
- 使用底部的按钮,直接导出为PDF、CSV或Excel(XLSX)文件。
再次导入
导入并不局限于首次导入。您可以分多次进行批量导入。第一列名为“id”,是每个实体在数据库中的只读标识符,也可以在网址(URL)中找到。如果修改了与某个标识符对应的行,该实体的数据就会随之更新。
要新增数据,请滚动到表格最底部:那里总有几行没有标识符的空行。像首次导入一样粘贴新数据,表格会相应地扩展。
再次导入的实体可能包含不支持导入/导出的复杂数据(有时会有一个只读列,仅用于导出这些数据),例如教师和教室的可用时间,或班级的时间限制。这时,这些数据会被原样自动回填。
因此,借助这套机制,您可以分多次批量导入,既不会丢失现有实体上已补充的数据,又能新建或删除其他实体。
批量删除
如“再次导入”一节所述,第一列“id”用于识别各个实体。如果清空一行——至少清空标有“*”的必填列——导入时就会删除这些被清空的实体。由于可以像在标准电子表格中那样选择多行多列,只需按键盘上的删除键,就能清除任意多行,从而批量删除数据库中对应的实体。