Призма развертывания с SQLSyntaxError - PullRequest
0 голосов
/ 19 февраля 2020

Я собирался сделать что-то вроде учебника вещей с призмой.

Я выбираю способ "Существующая база данных" с mysql. Некоторое время это выглядело нормально, но когда я набрал prisma deploy, произошла ошибка ниже.

Я думаю, что это связано с ALTER Table с вещами ALGORITHM = INPLACE.

Я выясняю эти новые функции поддерживаются после mysql 5.6.x. (https://dev.mysql.com/doc/refman/5.6/en/innodb-online-ddl-operations.html)

вы, ребята, думаете, что это проблема с этим?

Я использую 5.5 версия.

Applying changes 9.5s
 !    The Migration failed and has not been performed. This is very likely not a transient issue.
 !    java.sql.SQLSyntaxErrorException: (conn=414970) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server
 !    version for the right syntax to use near '(3) NULL , ALGORITHM = INPLACE' at line 1
 !    at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:163)
 !    at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:106)
 !    at org.mariadb.jdbc.MariaDbStatement.executeExceptionEpilogue(MariaDbStatement.java:235)
 !    at org.mariadb.jdbc.MariaDbPreparedStatementClient.executeInternal(MariaDbPreparedStatementClient.java:224)
 !    at org.mariadb.jdbc.MariaDbPreparedStatementClient.execute(MariaDbPreparedStatementClient.java:159)
 !    at com.zaxxer.hikari.pool.ProxyPreparedStatement.execute(ProxyPreparedStatement.java:44)
 !    at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.execute(HikariProxyPreparedStatement.java)
 !    at slick.jdbc.StatementInvoker.results(StatementInvoker.scala:39)
 !    at slick.jdbc.StatementInvoker.iteratorTo(StatementInvoker.scala:22)
 !    at slick.jdbc.Invoker.first(Invoker.scala:30)
 !    at slick.jdbc.Invoker.first$(Invoker.scala:29)
 !    at slick.jdbc.StatementInvoker.first(StatementInvoker.scala:16)
 !    at slick.jdbc.StreamingInvokerAction$HeadAction.run(StreamingInvokerAction.scala:52)
 !    at slick.jdbc.StreamingInvokerAction$HeadAction.run(StreamingInvokerAction.scala:51)
 !    at slick.dbio.DBIOAction$$anon$4.$anonfun$run$3(DBIOAction.scala:239)
 !    at scala.collection.Iterator.foreach(Iterator.scala:937)
 !    at scala.collection.Iterator.foreach$(Iterator.scala:937)
 !    at scala.collection.AbstractIterator.foreach(Iterator.scala:1425)
 !    at scala.collection.IterableLike.foreach(IterableLike.scala:70)
 !    at scala.collection.IterableLike.foreach$(IterableLike.scala:69)
 !    at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
 !    at slick.dbio.DBIOAction$$anon$4.run(DBIOAction.scala:239)
 !    at slick.dbio.DBIOAction$$anon$4.run(DBIOAction.scala:237)
 !    at slick.basic.BasicBackend$DatabaseDef$$anon$3.liftedTree1$1(BasicBackend.scala:276)
 !    at slick.basic.BasicBackend$DatabaseDef$$anon$3.run(BasicBackend.scala:276)
 !    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 !    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 !    at java.lang.Thread.run(Thread.java:748)
 !    Caused by: java.sql.SQLException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the
 !    right syntax to use near '(3) NULL , ALGORITHM = INPLACE' at line 1
 !    Query is: ALTER TABLE `order_test`.`agency_calculate` ADD COLUMN `month_num` datetime(3) NULL , ALGORITHM = INPLACE
 !    at org.mariadb.jdbc.internal.util.LogQueryTool.exceptionWithQuery(LogQueryTool.java:146)
 !    at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:217)
 !    at org.mariadb.jdbc.MariaDbPreparedStatementClient.executeInternal(MariaDbPreparedStatementClient.java:218)
 !    ... 24 more
 !
...