Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过Doctrine Symfony framework在现有数据库中添加列_Php_Mysql_Sql_Symfony_Doctrine Orm - Fatal编程技术网

Php 通过Doctrine Symfony framework在现有数据库中添加列

Php 通过Doctrine Symfony framework在现有数据库中添加列,php,mysql,sql,symfony,doctrine-orm,Php,Mysql,Sql,Symfony,Doctrine Orm,为了在现有数据库中添加一列,我遵循了关于条令迁移的文档。 我成功地运行了所有命令,并获得了文档要求的自动生成的文件。但是在运行最后一个命令时。/symfony-doctrine:migratei在命令提示符中出现以下错误: SQLSTATE[42000]:语法错误或访问冲突:1064您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“VARCHAR100,value TEXT NOT NULL,PRIMARY KEYkey DEFAULT CHARACTER SET UT

为了在现有数据库中添加一列,我遵循了关于条令迁移的文档。

我成功地运行了所有命令,并获得了文档要求的自动生成的文件。但是在运行最后一个命令时。/symfony-doctrine:migratei在命令提示符中出现以下错误:

SQLSTATE[42000]:语法错误或访问冲突:1064您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“VARCHAR100,value TEXT NOT NULL,PRIMARY KEYkey DEFAULT CHARACTER SET UTF8”附近使用的正确语法。查询失败:创建表hs\u hr\u配置键VARCHAR100,值文本不为空,主键键默认字符集UTF8 ENGINE=INNODB 这两个位置是创建hs_hr_配置表的位置: 创建表格\u hr\u配置 keyvarchar100非空默认值, valuevarchar512不为空默认值, 主键 engine=innodb默认字符集=utf8

创建表hs_hr_config keyVARCHAR100,值文本不为NULL,主键键引擎=INNODB

有人知道如何消除这个错误吗

还有一个问题: 当我运行以下命令时: php应用程序/控制台原则:迁移:迁移 我得到的错误是找不到输入文件app/console。为什么我会出现这个错误

任何有价值的指导都将受到高度赞赏。

键是保留字。试着在“key”这样的引号中加上key

或者,您可以在映射中更改列的名称,使其不使用保留字,但仍映射到您的属性。如果您使用有问题的字段名创建任何将来的迁移,此方法还将停止创建任何问题

在亚马尔,你会做

fields:
    key:
        column: my_key
        type: string

另请参见

谢谢您的关注。我试图重命名该列,但它不起作用。这似乎是一个访问冲突错误,因为我正在处理的项目是由其他人构建的。我想我需要首先更改数据库访问它的用户名和密码。你知道怎么做吗?如果你更改了映射,那么你需要创建另一个差异。你怎么会认为这是访问冲突?允许它在错误中显示访问冲突,但它也会显示语法错误,并随后提供有关语法错误语法错误或访问冲突的更深入信息1064您的SQL语法中有错误;。。。关于特定语法错误的详细信息…实际上,在我的项目中,只有root用户可以修改数据库,而我不是以root用户的身份修改它。这使我认为这是一个访问冲突错误。