У меня 2 машины.Один с php 5.6, а другой с php 7.
Один с php 5.6 имеет:
[root@bd-mg ~]# mysql --version
mysql Ver 15.1 Distrib 10.1.23-MariaDB, for Linux (x86_64) using readline 5.1
Другой с php 7 имеет:
[root@XXX]# mysql --version
mysql Ver 15.1 Distrib 5.5.59-MariaDB, for Linux (x86_64) using readline 5.1
Когда я запускаю миграции на машине с php 5.6, у меня нет проблем.Все таблицы, представления, процедуры и функции созданы.Но на другом компьютере, когда я запускаю php artisan migrate
, у меня появляются следующие ошибки:
[root@XXX]# php artisan migrate
In Connection.php line 647:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '=`root`@`localhost` FUNCTION `genera_pr
oyeccion_demanda`(_IN_FECHA_PROYECCION da' at line 1 (SQL: REPLACE DEFINER=`root`@`localhost` FUNCTION `genera_proyeccion_demanda`(_IN_FECHA_PROYECCION date) RETURNS double
BEGIN
END
)
In PDOConnection.php line 62:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '=`root`@`localhost` FUNCTION `genera_pr
oyeccion_demanda`(_IN_FECHA_PROYECCION da' at line 1
In PDOConnection.php line 60:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '=`root`@`localhost` FUNCTION `genera_proyeccion_demanda`(_IN_FECHA_PROYECCION da' at line 1
В моих функциях или процедурах, конечно, больше кода, но я пытался свести к минимуму код, чтобы отбрасывать этот синтаксиспроблема, но я не понимаю, в моей другой машине работает, но не здесь:
Эта ошибка возникает даже с процедурами или функциями почти пустыми.Есть идеи?Пользователь базы данных - root, и я также запускаю php artisan от имени root.