为了账号安全,请及时绑定邮箱和手机立即绑定

使用jdbc创建MySQL的trigger出现错误

使用jdbc创建MySQL的trigger出现错误

红糖糍粑 2019-04-21 20:40:49
如下所示,我用jdbc来创建一个MySQL触发器,自己在navicat里面实验可以成功,但是程序跑起来就会提示创建触发器的语句有语法错误。求指教scaladefcreatTable(tbname:String):Unit={valconn:Connection=getConnif(conn!=null){valstmt:Statement=conn.createStatementvalctbsql:String="createtableifnotexists"+tbname+"("+"idbigint(20)notnullprimarykey,"+"namevarchar(255)notnull,"+"pricedouble,"+"pricechangetodaydouble,"+"categoryvarchar(20));"valtbtrigger="droptriggerifexists"+tbname+"pricechange"+"createtrigger"+tbname+"pricechangebeforeupdateon"+tbname+"foreachrow"+"begin"+"setnew.pricechangetoday=new.price-old.price;"+"end"stmt.execute(ctbsql)stmt.execute(tbtrigger)}}
查看完整描述

2 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

试试这样呢
stmt.executeUpdate(ctbsql);
stmt.executeUpdate(tbtrigger);
另外确认当前连接mysql的账号是否有create、drop等权限。
                            
查看完整回答
反对 回复 2019-04-21
  • 2 回答
  • 0 关注
  • 273 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信