在php下使用触发器并在mysql中的变量中生成表时出错

在php下使用触发器并在mysql中的变量中生成表时出错,php,mysql,triggers,compiler-errors,Php,Mysql,Triggers,Compiler Errors,问题:在mysql/mariadb中创建包含以下列的学生数据库模式: 名称(可变大小字符串) 出生日期:DOB(可变类型日期) 卷号(固定大小整数) 注册号(固定大小字符串) CPI(0到10,浮点) 成绩(根据学院规则,基于CPI列中的值填充成绩) 我的解决方案: a) mysql_*扩展已被弃用,请参见b)mysql_查询一次只能处理一条语句(而不是像您的情况那样处理三条语句)。我想触发器名称应该包含在backticks中,也许它应该有一个正确的名称,而不只是“a”。Perphaps“创

问题:在mysql/mariadb中创建包含以下列的学生数据库模式:

  • 名称(可变大小字符串)
  • 出生日期:DOB(可变类型日期)
  • 卷号(固定大小整数)
  • 注册号(固定大小字符串)
  • CPI(0到10,浮点)
  • 成绩(根据学院规则,基于CPI列中的值填充成绩)
  • 我的解决方案:

    
    
    a) mysql_*扩展已被弃用,请参见b)mysql_查询一次只能处理一条语句(而不是像您的情况那样处理三条语句)。我想触发器名称应该包含在backticks中,也许它应该有一个正确的名称,而不只是“a”。Perphaps“创建触发器
    trStudents
    after update…”以及为什么两个触发器相同/几乎相同?您试图通过对mysql\u查询的单个调用运行多个查询。你不能那样做。您可以拆分SQL以进行不同的调用;或者使用
    mysqli\u
    库重新编写代码,该库允许您使用
    mysqli\u多\u查询
    。a)mysql\u*扩展已被弃用,请参见b)mysql\u查询一次只能处理一条语句(而不是像您这样的三条语句)我猜触发器名称应该包含在backticks中,也许它应该有一个合适的名称——而不仅仅是“a”。Perphaps“创建触发器
    trStudents
    after update…”以及为什么两个触发器相同/几乎相同?您试图通过对mysql\u查询的单个调用运行多个查询。你不能那样做。您可以拆分SQL以进行不同的调用;或者使用
    mysqli\u
    库重新编写代码,该库允许您使用
    mysqli\u多查询