Android Studio中Firebase不存在指定表名时能否自动创建对应数据库表?
关于Firebase数据库动态创建数据集合的问题解答
- 首先给出明确结论:Firebase旗下的两类核心数据库(Cloud Firestore、 Realtime Database)都不需要提前预定义“表”结构,当你向不存在的集合/节点路径写入数据时,对应的结构会被自动创建,无需借助SQL或其他数据库实现该需求。
- Cloud Firestore是文档型NoSQL数据库,没有传统关系型数据库的“表”概念,对应存储层级为
集合-文档,你直接向未创建的集合写入文档即可自动生成该集合,不需要任何前置配置。示例写入代码(Web SDK):
// stationName为你传入的动态站点表名 await db.collection(stationName).add({ stationCode: "BJX", stationName: "北京西站", city: "北京" })
- Realtime Database是JSON树状结构的NoSQL数据库,同样没有表概念,所有数据都以JSON节点的形式存储,你向不存在的节点路径写入数据时,会自动生成完整路径的所有层级节点。示例写入代码(Web SDK):
// stationName为你传入的动态站点表名 await getDatabase().ref(`${stationName}/北京西站`).set({ stationCode: "BJX", city: "北京" })
- Firebase数据库本身不支持标准SQL语法,也不需要用SQL执行建表之类的DDL操作,所有数据结构都是写入时动态生成的,完全可以满足你按传入参数动态生成站点独立存储结构的需求。
内容的提问来源于stack exchange,提问作者Ronit Sagar
相关产品推荐
相关产品推荐

