Я не могу уловить ошибку в доктрине 2 + zf2 в sql-блоке.
Моей средой является ZF2 + Doctrine 2.
Код:
public function test() {
$connection = $this->_em->getConnection();
$sql = "DECLARE @Test AS dbo.DataTempTransactions
INSERT INTO @Test VALUES ('015.004.000',100,'015A')
DECLARE @DATE datetime
SET @DATE = GETDATE()
EXEC ONCode.dbo.TmSp_Exit @Test, @mnfdate = @DATE
SELECT * FROM ONTest.dbo.OBTN";
$stmt = $connection->prepare($sql);
return $stmt->execute();
}
Я использую параметр table value в блоке sql (https://msdn.microsoft.com/en-us/library/bb510489.aspx), я не знаю, влияют ли что-то.
Когда я запускаю этот код в приложении zf2, он не появляется ошибка, но в Visual Studio тот же блок sql имеет ошибку.
Когда вы создаете пользовательский тип, он является локальным для одной базы данных. Поэтому определяемый пользователем тип, определенный в одной базе данных, не может использоваться в определении столбца другой базы данных. Однако, если один и тот же пользовательский тип зарегистрирован и может быть доступен в двух базах данных, вы можете преобразовать определяемое пользователем значение типа из одной базы данных для использования в другой базе данных. Эта способность полезна, если вы хотите сделать следующее:
Ссылка: https://technet.microsoft.com/en-us/library/ms178069(v=sql.105).aspx