如需支持,请访问:https://discord.gg/DpNFSQu
SQLiteLib 是一个旨在简化 Minecraft 插件开发中 SQLite 数据库操作的库。它源于作者在 Spigot 上发布的 SQLite 教程,许多开发者反馈原代码难以理解或使用。因此,SQLiteLib 应运而生,为开发者提供了创建数据库、执行查询和操作数据的全套基础工具,并且支持在游戏内直接使用命令进行操作。
所有数据库文件都存储在插件目录下的 SQLiteLib 文件夹中。你可以在此手动编辑或删除数据库文件。
public SQLiteLib sqlLib;
@Override
public void onEnable() {
sqlLib = SQLiteLib.hookSQLiteLib();
}接入后,首先需要初始化数据库。这是使用其他所有功能的前提。
sqlLib.initializeDatabase("database_name", "CREATE TABLE IF NOT EXISTS table_name");- `database_name`:数据库名称。- `initial_statement`:初始化 SQL 语句,通常用于创建表结构。1.3 版本新增:你可以指定插件实例,以确保数据库文件创建在正确的插件目录下。
sqlLib.initializeDatabase(pluginInstance, "database_name", "CREATE TABLE IF NOT EXISTS table_name");此方法在数据库不存在时会创建它,存在时则直接加载。请确保在插件需要数据库时运行此代码。
此方法允许你执行任何 SQL 语句,提供了最大的灵活性。
if (sqlLib.getDatabase("name").executeStatement("statement")){
// 语句执行成功
} else {
// 执行失败
}用于从查询结果中获取一个特定的值。返回值为 Object 类型,需要根据实际情况进行类型转换。
String testValue = (String) sqlLib.getDatabase("test").queryValue("statement", "row");假设有一个简单的 test.db 数据库,表结构如下:
| ID |
|----|
| 1 |
| 2 |
| 3 |String test = (String) sqlLib.getDatabase("test").queryValue("SELECT * FROM test WHERE id = 1", "ID");注意:应尽量让查询语句只返回一个值,而不是一个列表。
此方法返回一个 List<Object>,包含指定行(列)的所有值。
List<Object> results = sqlLib.getDatabase("test").queryRow("SELECT * FROM test", "ID");
for (Object obj : results){
String ID = (String)obj;
System.out.println("ID: " + ID);
}此方法返回一个 Map<String, List<Object>>,其中键是行(列)名,值是该列下所有数据的列表。
Map<String, List<Object>> rows = sqlLib.getDatabase("test").queryMultipleRows("SELECT * FROM test", "row1", "row2", "row3");
String ID = (String) rows.get("row1").get(0); // 获取 row1 列的第一个值如需更多帮助,请随时加入 Discord 服务器:https://discord.gg/DpNFSQu
友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:2,600,261 | 历史访问人次:3,153,085
今日访问人数:20,968 | 今日访问人次:22,706
昨日访问人数:24,332 | 昨日访问人次:29,698
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6