将列从一个表复制到另一个表时的类型requirments

问题描述:

所以我有一个Addresses表和一个Contacts表。将列从一个表复制到另一个表时的类型requirments

我想从Contacts中将contact_id [int],address_street [varchar(256)],address_city [varchar(80)],address_state [varchar(20)],address_country [varchar(5)]复制到这些列中,地址中的contact_id [int],street1 [varchar(128)],city [varchar(128)],状态[varchar(128)],country [varchar(128)]。

我通过java界面使用的命令是insert into Addresses (contact_id, street1, city, state, country) select id, address_street, address_city, address_state, address_country from Contacts)。错误来自于varchar大小的不匹配,因为我不认为mysql语句根据https://catdevblog.nickbair.net/2012/04/05/mysql-copying-column-data-between-tables/错误。

您在发布的查询中有额外的)

除此之外,值的截断是自动的,只会生成警告,除非启用了strict mode,否则您将收到错误消息。

+0

哈哈,那是问题所在。我认为这是更复杂的事情。 – 2015-03-02 21:02:34