我有一个奇怪的事情:我在MySQL 5.6.14中将~4.7m记录从一个表复制到另一个表,使用INSERT INTO tabl1(col1,...)SELECT(col2 ...)FROM tbl2 ...和我有比以前更多的记录。确切地说是640。
我通过在两个表上执行选择计数(*)来检查,从旧表中减去新表(这给了我-640)。
有什么想法吗?我想知道额外的640条记录来自哪里。
两者都是InnoDB;旧表是拉丁字符集,新表是utf8。怀疑这个方程式的一部分,但也许有更多exp的MySQL会知道。
SQL语句示例:
jor %>% ggvis(~long, ~lat) %>%
layer_paths(data = jor %>% group_by(name),
strokeWidth := 0, fill = ~lat) %>%
hide_axis("x") %>% hide_axis("y") %>%
add_tooltip(function(data){paste("Gov: ", data$name, "<br>", "Total: ", as.character(data$lat))}, "hover")
接收记录的表是新的,其中有0条记录,并且从未有过记录。此外,它不是一个生产环境,所以除了这一个声明之外,什么都不应该添加记录。
答案 0 :(得分:1)
试试这个:
如果表已存在于数据库中,请先删除该表。这样您就可以确定import codecs
f = codecs.open('unicode.rst', encoding='utf-8')
for line in f:
print repr(line)
不会有任何额外数据。
DROP TABLE IF EXISTS tabl1
;
使用tabl1
语句重新创建要复制的表tabl2
,将create table
中的所有内容复制到tabl2
,如下所示:
CREATE TABLE tabl1
SELECT * FROM`tabl2