猫史档案馆


求助一下,帮帮

用户:迷失星河迷失星河查看:0 回复:0 评论:0 创建时间:2024-08-03T23:30:52


旧版编程器,调用await loadUser1(entity),

报错sql error: Error: SQLITE_CORRUPT: malformed database schema (players) - incomplete input

 

 

 

async function initTable1() {
    await db.sql`CREATE TABLE IF NOT EXISTS players (
        "muted_day" INT default 0,
        "ban_day" INT default 0,
        "email" TEXT default '',
        "name" VARCHAR(50) NOT NULL,
        "userKey" CHAR(16) PRIMARY KEY UNIQUE NOT NULL
    )`;
}

async function saveUser1(user) {
    await db.sql`
        INSERT INTO players (
            "muted_day",
            "ban_day",
            "email",
            "name",
            "userKey"
        ) VALUES (
            ${user.muted_day}, 
            ${user.ban_day}, 
            ${JSON.stringify(user.email)}, 
            ${user.player.name},
            ${user.player.userKey}
        )
        ON CONFLICT("userKey") 
        DO UPDATE SET
            "muted_day"=excluded."muted_day",
            "ban_day"=excluded."ban_day",
            "email"=excluded."email",
    `
}

async function loadUser1(user) {
    const [data] = await db.sql`SELECT * FROM players WHERE "userKey"=${user.player.userKey} LIMIT 1`
    if (data) {
        user.muted_day = data.muted_day
        user.ban_day = data.ban_day
        user.email = JSON.parse(data.email)
    }
    else {
        saveUser1(user)
    }
}

async function deleteUser1(user) {
    await db.sql`DELETE FROM players WHERE "userKey"=${user.player.userKey}`
}

async function showAllPlaySideUser1() {
    for (const e of await db.sql`SELECT * FROM play.players`) {
        console.log(JSON.stringify(e))
    }
}

async function showAllEditSideUser1() {
    for (const e of await db.sql`SELECT * FROM edit.players`) {
        console.log(JSON.stringify(e))
    }
}

async function poll(fn, msg) {
    while (true) {
        try {
            return await fn()
        } catch (e) {
            world.say(e)
        }
        await sleep(2000)
    }
}


poll(initTable1)


回复

上一页1 页 / 共 0下一页