日期:2014-05-16  浏览次数:20712 次

mysql 数据操作的一个问题
目前有一张基础数据表
device 
---------------------------------------------
  设备名 设备类型 型号 厂商 FK
id dname dtype modelnum provider info ....... N多字段
1 ATM 自助设备 PZ650 长远 NULL

2 CDS 自助设备 DT-7000H68 光电 NULL

3 ASM 自助设备 NB2031A 国光 NULL
----------------------------------------------

上边这张表里,dname,dtype,modelnum,provider 这四个字段其实在另外一张表[deviceinfo]里,有唯一的ID对应,
现在需要将 这四个字段对应的唯一ID查出来,然后放到 上表的info里,并且把这四个字段删除,各位给个主意,帮我看看
该怎么做。

------解决方案--------------------
SQL code
---先插入记录
insert into deviceinfo  a select dname,dtype,modelnum,provider
from device b where a.id=b.id

---删除列dname,dtype,modelnum,provider
alter table device drop column 数据类型;

------解决方案--------------------
SQL code

update device d, deviceinfo di set d.info=di.id where d.dname = di.dname and d.dtype = di.dtype and d.modelnum = di.modelnum and d.provider=di.provider;
alter table device drop ...;