の更新に失敗しましたねえコミュニティ、のSymfony 2.6は、データベース
iはMSSQL-DatabaseでのSymfony 2とDoctrineに問題があります。 "php app/console doctrine:database:create"と "php app/console doctrine:schema:create"はすべて問題ありません。しかし、「PHPアプリ/コンソール教義:スキーマ:アップデート」にORMマッパーまたはエンティティの表示の変更せずに、次のエラー:私はテーブルから手動で制限を削除すると
[Doctrine\DBAL\DBALException]
An exception occurred while executing 'ALTER TABLE product DROP CONSTRAINT DF_D34A04AD_A5D6E63E':
SQLSTATE[42000]: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]DF_D34A04AD_A5D6E63E is not a restriction.
を助けてください"DF__product__timesta__38996AB5" という名前の、その新しいError:
[Doctrine\DBAL\DBALException]
An exception occurred while executing 'ALTER TABLE product ALTER COLUMN timestamp DATETIME DEFAULT CURRENT_TIMESTAMP':
SQLSTATE[42000]: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Incorrect syntax near the DEFAULT keyword.
は
を助けてくださいPHPのためのデータベース
Microsoft SQL Server 2016
パッケージ:
php70.x86_64 1.0-5.el7
php70-php.x86_64 7.0.26-1.el7
php70-php-cli.x86_64 7.0.26-1.el7
php70-php-common.x86_64 7.0.26-1.el7
php70-php-json.x86_64 7.0.26-1.el7
php70-php-pdo.x86_64 7.0.26-1.el7
php70-php-sqlsrv.x86_64 4.3.0-1.el7
php70-php-xml.x86_64 7.0.26-1.el7
php70-runtime.x86_64 1.0-5.el7
parameters.yml
database_driver: sqlsrv
のsrc/AppBundle /エンティティ/ Product.php 名前空間AppBundle \ Entity;
class Product
{
private $name;
private $price;
private $description;
private $timestamp;
}
のsrc/AppBundle /リソース/設定/ドクトリン/ Product.orm.yml
AppBundle\Entity\Product:
type: entity
table: product
id:
id:
type: integer
generator: { strategy: AUTO }
fields:
name:
type: string
length: 100
price:
type: decimal
scale: 2
description:
type: test
timestamp:
type: datetime
columnDefinition: DATETIME DEFAULT CURRENT_TIMESTAMP
nullable: false
テーブルpanel.productの輸出構造
CREATE TABLE IF NOT EXISTS "product" (
"id" INT(10,0) NOT NULL,
"name" NVARCHAR(100) NOT NULL,
"price" NUMERIC(10,2) NOT NULL,
"description" VARCHAR(max) NOT NULL,
"timestamp" DATETIME(3) NULL DEFAULT (getdate()),
PRIMARY KEY ("id")
);
作曲ショー-i
doctrine/annotations v1.2.6 Docblock Annotations Parser
doctrine/cache v1.4.1 Caching library offering an object-oriented API for many cache backends
doctrine/collections v1.3.0 Collections Abstraction library
doctrine/common v2.5.0 Common Library for Doctrine projects
doctrine/dbal v2.4.4 Database Abstraction Layer
doctrine/doctrine-bundle v1.5.0 Symfony DoctrineBundle
doctrine/doctrine-cache-bundle v1.0.1 Symfony2 Bundle for Doctrine Cache
doctrine/inflector v1.0.1 Common String Manipulations with regard to casing and singular/plural rules.
doctrine/lexer v1.0.1 Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.
doctrine/orm v2.4.7 Object-Relational-Mapper for PHP
incenteev/composer-parameter-handler v2.1.1 Composer script handling your ignored parameter file
jdorn/sql-formatter v1.2.17 a PHP SQL highlighting library
kriswallsmith/assetic v1.2.1 Asset Management for PHP
monolog/monolog 1.15.0 Sends your logs to files, sockets, inboxes, databases and various web services
psr/log 1.0.0 Common interface for logging libraries
sensio/distribution-bundle v4.0.0 Base bundle for Symfony Distributions
sensio/framework-extra-bundle v3.0.9 This bundle provides a way to configure your controllers with annotations
sensio/generator-bundle v2.5.3 This bundle generates code for you
sensiolabs/security-checker v2.0.5 A security checker for your composer.lock
swiftmailer/swiftmailer v5.4.1 Swiftmailer, free feature-rich PHP mailer
symfony/assetic-bundle v2.6.1 Integrates Assetic into Symfony2
symfony/monolog-bundle v2.7.1 Symfony MonologBundle
symfony/swiftmailer-bundle v2.3.8 Symfony SwiftmailerBundle
symfony/symfony v2.6.11 The Symfony PHP framework
twig/extensions v1.2.0 Common additional features for Twig that do not directly belong in core
twig/twig v1.18.2 Twig, the flexible, fast, and secure template language for PHP
ALTER TABLEプロダクトALTER COLUMNタイムスタンプDATETIME DEFAULT CURRENT_TIMESTAMP このコードは変更できません。doctrineからの変更です。 'DF_D34A04AD_A5D6E63E'は制約ではありません。 これはdoctrineからのものです。 Iamはどこにこの名前を教義にするのかわからない。 –
>>> ALTER TABLE製品ALTER COLUMNタイムスタンプDATETIME DEFAULT CURRENT_TIMESTAMP変更できません<<< SQL Serverパーサーはサポートされていない構文のみを受け入れることはできません – sepupic
>>>この名前をdoctrineのどこに取得するのかはわかりません。 SQL Server Profilerを使用して、サーバーに送信されたすべてのクエリを取得できます。だから、それが間違ったテーブルに行くかどうかを見つけることができます、多分それはスキーマなどを使用しません – sepupic