由于内容类型冲突,我无法将Django fixtures加载到我的MySQL数据库中.首先,我尝试从我的应用程序转储数据,如下所示:
./manage.py dumpdata escola > fixture.json
Run Code Online (Sandbox Code Playgroud)
但我不断错过外键问题,因为我的应用程序"escola"使用其他应用程序中的表.我一直在添加额外的应用程序,直到我这样做:
./manage.py dumpdata contenttypes auth escola > fixture.json
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试将数据作为测试夹具加载时,问题是以下约束违规:
IntegrityError: (1062, "Duplicate entry 'escola-t23aluno' for key 2")
Run Code Online (Sandbox Code Playgroud)
似乎问题是Django正在尝试动态地重新创建具有与夹具中的主键值冲突的不同主键值的内容类型.这似乎与此处记录的错误相同:http://code.djangoproject.com/ticket/7052
问题是推荐的解决方法是转储我正在做的contenttypes应用程序!?是什么赋予了?如果它有所不同,我确实有一些自定义模型权限,如下所示:http://docs.djangoproject.com/en/dev/ref/models/options/#permissions
我有一个表"Bestelling"有4列:"Id"(PK),"KlantId","Datum","BestellingsTypeId",现在我想让列Id auto_increment,但是,当我尝试这样做时,我得到这个错误:
ERROR 1062: ALTER TABLE causes auto_increment resequencing, resulting in duplicate entry '1' for key 'PRIMARY'
SQL Statement:
ALTER TABLE `aafest`.`aafest_bestelling` CHANGE COLUMN `Id` `Id` INT(11) NOT NULL AUTO_INCREMENT
ERROR: Error when running failback script. Details follow.
ERROR 1046: No database selected
SQL Statement:
CREATE TABLE `aafest_bestelling` (
`Id` int(11) NOT NULL,
`KlantId` int(11) DEFAULT NULL,
`Datum` date DEFAULT NULL,
`BestellingstypeId` int(11) DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
Run Code Online (Sandbox Code Playgroud)
有人有个主意吗?
鉴于mysqldump
导致导入错误的错误:
namtar backups # mysql -p < 2010-12-01.sql
Enter password:
ERROR 1062 (23000) at line 8020: Duplicate entry 'l?he?' for key 'wrd_txt'
Run Code Online (Sandbox Code Playgroud)
是否有一种简单的方法可以告诉导入只是跳过给定的行并继续?
(是的,我知道我可以手动编辑文件或解析输出,但它不是很方便)
我正在使用MySQL 5.1.56,MyISAM.我的表看起来像这样:
CREATE TABLE IF NOT EXISTS `my_table` (
`number` int(11) NOT NULL,
`name` varchar(50) NOT NULL,
`money` int(11) NOT NULL,
PRIMARY KEY (`number`,`name`)
) ENGINE=MyISAM;
Run Code Online (Sandbox Code Playgroud)
它包含这两行:
INSERT INTO `my_table` (`number`, `name`, `money`) VALUES
(1, 'S. Name', 150), (2, 'Another Name', 284);
Run Code Online (Sandbox Code Playgroud)
现在我想插入另一行:
INSERT INTO `my_table` (`number`, `name`, `money`) VALUES
(2, 'S. Name', 240);
Run Code Online (Sandbox Code Playgroud)
MySQL告诉我这个时不会插入它:
#1062 - Duplicate entry '2-S. Name' for key 'PRIMARY'
Run Code Online (Sandbox Code Playgroud)
我真的不明白.主键位于前两列(两者都是),因此我尝试插入的行是一个唯一的主键,不是吗?
我试图修复表,我试图优化表,一切都无济于事.另请注意,我无法从MyISAM更改为InnoDB.
我错过了什么或者这是MySQL或MyISAM的错误吗?谢谢.
总结并指出我认为的问题所在(尽管不应该存在): Table在两列上有主键.我试图在这两列中插入一个具有新值组合的行,但第一列中的值已经在某行中,第二列中的值已经在另一行中.但它们并没有任何组合,所以我相信这应该有用,我很困惑,看到它没有.
我有这个错误消息的问题,当我尝试这个:
INSERT INTO `PROGETTO`.`UFFICIO-INFORMAZIONI` (`ID`, `viale`, `num_civico`,
`data_apertura`, `data_chiusura`, `orario_apertura`, `orario_chiusura`,
`telefono`, `mail`, `web`, `Nome-paese`, `Comune`)
VALUES (1, 'Viale Cogel ', '120', '2012-05-21', '2012-09-30', '08:00', '23:30',
'461801243', 'informazioni@bolzano.it', 'Bolzanoturismo.it', 'Bolzano', 'BZ')
Run Code Online (Sandbox Code Playgroud)
错误代码:1062.密钥'PRIMARY'的重复条目'1'
我没有auto_increment数据,请帮助我!
这是与表相关的,UFFICIO-INFORMAZIONI
CREATE TABLE IF NOT EXISTS `PROGETTO`.`UFFICIO-INFORMAZIONI` (
`ID` INT(11) NOT NULL ,
`viale` VARCHAR(45) NULL ,
`num_civico` VARCHAR(5) NULL ,
`data_apertura` DATE NULL ,
`data_chiusura` DATE NULL ,
`orario_apertura` TIME NULL ,
`orario_chiusura` TIME NULL ,
`telefono` VARCHAR(15) NULL ,
`mail` VARCHAR(100) NULL ,
`web` …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将一些mysql表从latin1转换为utf8.我正在使用以下命令,这似乎主要起作用.
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
Run Code Online (Sandbox Code Playgroud)
但是,在一个表上,我收到有关重复键输入的错误.这是由"名称"字段上的唯一索引引起的.在转换为utf8时,似乎任何"特殊"字符都被索引为它们的直接英语等价物.例如,已存在名称字段值为"Dru"的记录.转换为utf8时,带有"Drü"的记录被视为重复记录.与"Patrick"和"Påtrìçk"相同.
以下是如何重现该问题:
CREATE TABLE `example` ( `name` char(20) CHARACTER SET latin1 NOT NULL,
PRIMARY KEY (`name`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
INSERT INTO example (name) VALUES ('Drü'),('Dru'),('Patrick'),('Påtrìçk');
ALTER TABLE example convert to character set utf8 collate utf8_general_ci;
ERROR 1062 (23000): Duplicate entry 'Dru' for key 1
Run Code Online (Sandbox Code Playgroud) 所以我的MySQL数据库表现得有点奇怪.这是我的表:
Name shares id price indvprc
cat 2 4 81 0
goog 4 4 20 20
fb 4 9 20 20
Run Code Online (Sandbox Code Playgroud)
当我尝试插入表格时,我收到了#1062错误.所以我进一步调查并意识到当我尝试将值插入表中,其中名称和共享值相同时,它将返回#1062错误.例如,如果我插入:
fb 4 6 20 20
Run Code Online (Sandbox Code Playgroud)
它会返回一个错误.但如果我将股票数量改为6,那就可以了.是因为我的一个列可能是唯一的,还是只是mysql的东西?
在创建产品时,在检索一段时间后的最后一步,Magento给出以下错误 - :
SQLSTATE [23000]:完整性约束违规:1062密钥'IDX_STOCK_PRODUCT'的重复条目'1922-1'
我正在做的是,通过捕获产品ID,我将它放入自定义表中.我已从外部连接到Magento数据库.
令人惊讶的是,数据被插入到Magento的基表和自定义表中,但为什么它会在产品保存后给我这个错误...?
我清除了缓存,浏览器cookie.同时删除/ var/cache,/ var/session.仍然给出错误.有人可以提出解决方案吗?
我有一个数据库问题,我得到完整性约束违规:1062.我自己尝试了一些东西,但它确实有效,所以现在我要求你们看看你们是否有人可以帮助我.
elseif($action == 'add') {
if($_POST['create'] == true) {
$title = $_POST['txtTitle'];
$txtParentCategorie = $_POST['txtParentCategorie'];
$txtContent = $_POST['txtContent'];
if($txtParentCategorie == "niks") {
$txtParentCategorie = NULL;
$chkParent = 1;
$order_count = countQuery("SELECT categorieID FROM prod_categorie WHERE parentID=?",array(1));
$order = $order_count + 1;
} else {
$chkParent = null;
$order_count = countQuery("SELECT categorieID FROM prod_categorie WHERE parentID is not NULL");
$order = $order_count + 1;
}
Query("INSERT INTO prod_categorie (categorieID, parentID) VALUES (?, ?)", array($chkParent, $txtParentCategorie));
$inserted_id = getLastInsertId();
Query("INSERT INTO tekst …
Run Code Online (Sandbox Code Playgroud) 我正在运行一个主从MySQL二进制日志复制系统(p!),对于某些数据,它不同步(意味着,主机拥有的数据多于从机).但是奴隶经常在最轻微的MySQL错误上停止,这可以被禁用吗?(也许是复制奴隶的my.cnf设置ignore-replicating-errors或者某种类型;))
这就是发生的事情,当奴隶试图复制一个不存在的物品时,奴隶就会死亡.快速查看SHOW SLAVE STATUS\G; 给
Slave-IO-Running: Yes
Slave-SQL-Running: No
Replicate-Do-DB:
Last-Errno: 1062
Last-Error: Error 'Duplicate entry '15218' for key 1' on query. Default database: 'db'. Query: 'INSERT INTO db.table ( FIELDS ) VALUES ( VALUES )'
Run Code Online (Sandbox Code Playgroud)
我通过执行以下操作立即修复(一旦我意识到奴隶已经停止):
STOP SLAVE;
RESET SLAVE;
START SLAVE;
Run Code Online (Sandbox Code Playgroud)
... ...最近这已经变得有点烦人了,在我吐出某种PHP为我做这个之前,我想知道是否有一些my.cnf条目在第一次错误时不会杀死奴隶.
干杯,
/ MP
mysql-error-1062 ×10
mysql ×9
duplicates ×3
sql ×2
backup ×1
bash ×1
binlog ×1
collation ×1
constraints ×1
django ×1
error-code ×1
fixtures ×1
latin1 ×1
magento ×1
mysqldump ×1
primary-key ×1
replication ×1
utf-8 ×1