临时表Shoptable 有一个userid为记录当前是谁购买的
如果用户没有登录则给一个GUID
当用户注册的时候就把GUID改回用户的ID号
操作比如:
当用户没有登录的时候购买了物品ID为12,13
则表有记录
id ... userid  ... productid count
.. ... GUID值  ...        12     1
.. ... GUID值  ...        13     1
然后用户登录的时候就把GUID值改回用户ID 如用户ID为1
id ... userid  ... productid count
.. ...      1  ...        12     1
.. ...      1  ...        13     1
当用户再注销的时候双购买了商品12,13 表有
id ... userid  ... productid count
.. ... GUID值  ...        12     1
.. ... GUID值  ...        13     1
然后用户再登录;因为我的表是当用户已经购买的的商品再次购买的话就在count+1
但因为用户登录再购买的再注销购买就生成了
id ... userid  ... productid count
.. ...      1  ...        12     1
.. ...      1  ...        13     1
.. ... GUID值  ...        12     1
.. ... GUID值  ...        13     1
这样的表,如果我只是简单的把GUID改为用户的ID的话那表就为
id ... userid  ... productid count
.. ...      1  ...        12     1
.. ...      1  ...        13     1
.. ...      1  ...        12     1
.. ...      1  ...        13     1
而真正我要的表是
id ... userid  ... productid count
.. ...      1  ...        12     2
.. ...      1  ...        13     2
虽然这样可以在用户登录的时用循否判断添加到数据库
但自己感觉不是很科学
所以请大家说说看法:
-------------------------------------------------------
其实问题也就是:表
id ... userid  ... productid count
.. ...      1  ...        12     1
.. ...      1  ...        13     1
.. ... GUID值  ...        12     1
.. ... GUID值  ...        13     1
在GUID值更新为1时表记录变为
id ... userid  ... productid count
.. ...      1  ...        12     2
.. ...      1  ...        13     2谢谢

解决方案 »

  1.   

    分成两个表Shoptable1(用于GUID)和Shoptable2(用于ID)
    判断是GUID进入Shoptable1,判断是ID进入Shoptable2发现GUID的用户有ID,则把相应数据更改到Shoptable2
    如:你说的情况
        1、删除下边两个数据
           .. ... GUID值  ...        12     1
           .. ... GUID值  ...        13     1
        2、更改下边数据:
           .. ...      1  ...        12     1
           .. ...      1  ...        13     1
           为
           .. ...      1  ...        12     2
           .. ...      1  ...        13     2
      

  2.   

    既然你不能保证用户两次登录都用同一个ID(如果两个人使用同一台网吧机器呢),那只能在确认是同一个人时合并。即便把表分开,其实质还是一样的。当然,也有一个替代办法:
    就是你并不合并这两条记录,而只是在显示或生成正式订单时,在应用逻辑中予以合并。这样既避免了数据库数据的调整,也保留了用户购物车信息的“足迹”。欢迎大家来我的博客作客:http://blog.csdn.net/aafshzj/
    我正在写一系列关于AAF组件框架的文章。该框架能对开发工作提供很多帮助,并极大地提高开发效率。希望大家看一看并提出宝贵建议。
      

  3.   

    GUID改为用户的ID之前判断一下呢?
      

  4.   

    在用户登录的时候把GUID更新为登录的userid 不就行了吗
    然后再购买的时候再判断有无该商品的记录 有的话就更新其购买的数量 没有的话 新增购买记录
    哈哈 仅供参考 如有雷同 纯属偶合