mysql 中执行 insert into 时报错: Column count doesn't match value count at row 1
经检查发现是因为列数和表中的列数不对应导致 的(比如想要插入的数据没有自增列),此时就应该指定个字段的列名。
报错之前:
" insert into locus_bycar_detail " +
" select b.bid,cast(b.score as signed ) as sid,b.travel_date,b.violation_count,b.fault_count,b.mileage , b.avgspeed " +
" from ( " +
" select a.* from temp_bycar_3 a left outer join locus_bycar_detail b on " +
" a.bid=b.bid and a.travel_date=b.travel_date where b.bid is null ) b " ;
修改后如下:
" insert into locus_bycar_detail (bid,sid,travel_date ,violation_count,fault_count,mileage,avgspeed) " +
" select b.bid,cast(b.score as signed ) as sid,b.travel_date,b.violation_count,b.fault_count,b.mileage , b.avgspeed " +
" from ( " +
" select a.* from temp_bycar_3 a left outer join locus_bycar_detail b on " +
" a.bid=b.bid and a.travel_date=b.travel_date where b.bid is null ) b " ;
只需要把各字段对应就行了 ,自增列在插入时生成。
















