我正在制作一个需要将commandname
和commandreply
存储在数据库中的机器人。我正在使用mySQL Workbench。
我想检查用户尝试制作的commandname
是否已在表中,如果显示,请显示该表。如果不是,则继续(执行命令)。
connection.query("SELECT commandname FROM commands WHERE EXISTS (commandname = " + args[0] + ")"
(其中
args[0]
是命令名称)。这是我最初的想法,尽管我在SQL方面没有太多经验。我不确定如果存在或不存在,它将显示什么。 最佳答案
SELECT count(*) FROM commands WHERE commandname = ' + args[0] + '
如果返回0,则插入else更新。
更好的方法是先更新,然后查看多少行(如果为0然后再插入),那么在大多数情况下,它将仅运行1个查询(假设更新比插入更频繁)。