MySQL 数据库 discord.js

Posted

技术标签:

【中文标题】MySQL 数据库 discord.js【英文标题】:MySQL Database discord.js 【发布时间】:2021-12-09 08:36:37 【问题描述】:

这是我第一次使用数据库,但遇到了问题。我想嵌入数据库中的信息。 Bot 只能读取这些信息而不能更改任何内容。我使用npm mysql 设置了带有数据库的机器人。现在我准备好数据库连接和嵌入,但我真的不知道如何将这两件事结合起来。在嵌入的值字段中应该来自数据库的信息。例如,在数据库中有一个包含男性玩家的列,因为他们整天都在变化,所以我想制作一个嵌入来准确显示当有人输入命令 info 时有多少男性玩家。

数据库连接代码(出于某种原因,一切都是私有的):

    const connection = mysql.createConnection(
        host     : 'private',
        port     : 'private',
        user     : 'private',
        password : 'private',
        database : 'private',
        charset  : 'private'
      );


    connection.connect()

我的嵌入代码(在值字段中应该来自数据库的信息):


    if(message.content.startsWith(prefix + 'info')) 
         
        const sembed = new Discord.MessageEmbed()

        .setTitle('Info:')
        .setThumbnail('png')
        .setColor('GOLD')
        .addFields(
            name: 'Players:', value: '',
            name: '????????', value: '', inline: true,
            name: '????????', inline: true,
            name: '????????', value: '', inline: true,
        )
        .setTimestamp()

        message.channel.send(embeds: [sembed])
      



【问题讨论】:

为什么将每个值都设为私有? 您是否注意到有额外的报价 (')?您可以通过语法高亮查看位置 在代码中改变了,ty 【参考方案1】:

对于数据库连接,请使用具有适当值的那些代码行。

const connection = mysql.createConnection(
    host     : 'localhost',
    port     : 'your my sql port',
    user     : 'my sql username',
    password : 'user password',
    database : 'database name',
    charset  : 'utf8mb4'
  );

connection.connect()

希望对您有任何帮助。

【讨论】:

我这样做了,但出于显而易见的原因,我将所有内容都放在了 private 中。我遇到的问题不是数据库连接本身,而是填充嵌入中的值,因为应该有来自数据库的信息。例如,在数据库中有一个包含男性玩家的列,因为他们整天都在变化,所以我想制作一个嵌入来准确显示当有人输入命令时有多少男性玩家info 为此,您必须存储所有信息,然后您必须按男性或女性类别过滤它们。 我很抱歉,但我不知道你的意思或我应该做什么。就像我说的那样,这是我第一次使用数据库 那你得先学sql。为此,您可以访问 w3schools.com 如果你的意思是数据库,一切都在那里设置。一切都被过滤了,我只需要成为嵌入中的信息

以上是关于MySQL 数据库 discord.js的主要内容,如果未能解决你的问题,请参考以下文章

如何发送数据库内容而不是 [object Object] Discord.js + mysql

MySQL 数据库 discord.js

我的不和谐机器人上的数据库(Discord.js + mysql)

Discord.js 和 mysql 检查新的数据库条目并输出它们?

在 Discord.js 和 MySQL 中注册命令

Discord.js 与 mysql (查询,如果不发送消息到通道)