猫史档案馆


某大屑用手机打出了一段sql操作模块()

用户:𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟查看:25 回复:6 评论:25 创建时间:2023-05-08T21:12:55


module.exports = {
    get() {
        if (!this.key && this.configure.warns.NonSetkey) {
            console.warn("SQLc: you have't set uesrkey!");
        }
    },

    setUserkey(player) {
        if (typeof (player) != 'Box喵layer') return console.error(`can 't set playerTarget with ${typeof (player)} (value: ${player} )`);
        this.key = player.userkey;
    },

    InitSQLdatebase() {
        db.sql` CRATE TABLE player(
                                                                                        id NOT NULL 
                                                                                                    usrKey char(16) NOT NULL 
                                                                                                                data json DEFAULT() NOT NULL
                                                                                                                        ) if not exist `
    },

    getdata(target) {
        return target ?
            db.sql(`SELECT * FROM player WHERE id = ${target}`)
            : db.sql(`SELECT * FROM player WHERE usrKey = ${this.key}`)
    },

    deldata() {
        db.sql`DELETE FROM player WHERE usrKey = ${this.key}`
    },

    addData(Data, player) {
        if (Data === null || Data === undefined) return console.error(`SQLc error: Data must be added (command target:${player})`)
        const Rjsys = this.configure.REJECTsys, RjNo = Rjsys.Inputs.includce(Data)
        if (RjNo) return console.warn(`SQLc: invalid word "${String(Data)}". \n (at SQLc.addData(...Data,${player})`)

        if (Rjsys.Replace[RjNo] == -1 ) { console.warn(`SQLc: invalid word "${String(Data)}". \n Now replace by "${Rjsys.Replace[RjNo]}" (@SQLc.addData(...Data,${player})`) }

        db.sql`INSERT INTO player (data,usrKey) VALUES (${Data},${this.key});`
    },
    configure: {
        admins: [],
        REJECTsys: {
            open: true,
            addRejects(...adds) {
                adds.forEach(i => {
                    if (!adds[i]) continue;
                    this.Inputs.push(adds[i][1]);
                    this.Replace.push(adds[i][2] ? adds[i][2] : undefined)
                })
                return this.Inputs, this.Replace;
            },
            Inputs: [],
            Replace: []
        },

        warns: {
            DataNotFind: false,
            inputNull: true,
            inputInvalids: true,
            NonSetkey: true
        }
    }
}

保存以上代码到一个文件变成一个模块,然后在index用以下方法初始化

const sql = require('./sql.js')

world.onPlayerJoin(({ entity }) => {

sql.setUserkey(entity)

})
sql.InitSQLdatabase()

由于没有测((()

请各位指出其中错误(诶我inputs怎么没有识别成array)

各自功能以后更新()

请关注:SQLc(SQLcommand)


回复

上一页1 页 / 共 1下一页
𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟

这个sql模块还有config设置()

点赞0


评论


𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟

话说sql可以json直接存吗()

点赞0


评论


𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟

诶等等array方法又写错了emotion_doge💦

点赞1


评论


_HHHHHHHHHH__HHHHHHHHHH_

好家伙这么有毅力()用手机打代码(((

点赞0


评论


时光紫烟时光紫烟

6。

我对代码一窍不通

点赞1


评论


AokenAoken

<<<

点赞0


评论