标签: mysql-error-1060

#1060 - 重复列名'id'

为什么我得到#1060 - 重复列名'id'

SELECT COUNT(*) FROM (SELECT * FROM `tips` `t` LEFT JOIN
tip_usage ON tip_usage.tip_id=t.id GROUP BY t.id) sq
Run Code Online (Sandbox Code Playgroud)

mysql sql mysql-error-1060

23
推荐指数
2
解决办法
7万
查看次数

插入记录如果在sql中不存在,则重复列名

我想要一个解决方案来插入一个记录,如果它不存在所以我在这里搜索并找到了解决方案,但我有另一个问题

INSERT INTO closed_answers (question_id, subject_id)
SELECT * FROM (SELECT 2, 2) AS tmp
WHERE NOT EXISTS (
    SELECT question_id FROM closed_answers WHERE question_id = 2 AND subject_id = 2
) LIMIT 1
Run Code Online (Sandbox Code Playgroud)

输出是

#1060 - Duplicate column name '2'
Run Code Online (Sandbox Code Playgroud)

如果我使用任何不相同的2个数字它将起作用,但当2个数字相同时出现问题

mysql sql activerecord insert mysql-error-1060

7
推荐指数
1
解决办法
3866
查看次数

如果不存在,则使用 SQL 语句更改忽略表添加列

我想在 mysql 表中添加一个新列,但我想忽略添加列,如果该列已经存在

我目前正在使用

ALTER IGNORE TABLE `db`.`tablename` ADD COLUMN `column_name` text NULL;
Run Code Online (Sandbox Code Playgroud)

但这是抛出一个错误说: "ERROR 1060 (42S21): Duplicate column name 'column_name'"

即使我正在使用 IGNORE,这也不起作用

我希望它使用普通的 SQL 语句而不是存储过程来工作

mysql sql mysql-error-1060

5
推荐指数
1
解决办法
6898
查看次数

MySQL错误1060:重复的列名称ALTER TABLE

由于我没有创建的代码中的错误,我在查询时遇到了一些问题.

$query = $this->db->query("ALTER TABLE `" . DB_PREFIX . "customer` ADD `customer_type` TINYINT(1) NOT NULL; 
Run Code Online (Sandbox Code Playgroud)

我不是编码员,但到目前为止修复了(我认为)错误.通过与不抛出错误的其他查询进行比较并在stackoverflow上阅读相当多的类似帖子,我添加了一个缺少的引号,括号和分号.没有更多错误,但不确定这是否是正确的做法?我最终得到了这个:

$query = $this->db->query("ALTER TABLE `" . DB_PREFIX . "customer` ADD `customer_type` TINYINT(1) NOT NULL;");
Run Code Online (Sandbox Code Playgroud)

但现在,我得到一个重复的列错误1060"重复列名称".所以我做了同样的事情,谷歌搜索了它,搜索stackoverflow并发现一些使用别名的例子和一堆额外的代码行,这是我的头脑.这段代码位于一个.php文件的旁边,有人会亲自握住我的手吗?你可以认为这是你今天的好事!谢谢你的时间.

php alter-table mysql-error-1060

1
推荐指数
1
解决办法
7627
查看次数

标签 统计

mysql-error-1060 ×4

mysql ×3

sql ×3

activerecord ×1

alter-table ×1

insert ×1

php ×1