V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
dhnUphp
V2EX  ›  程序员

数据库怎样建表才能存一个相册

  •  
  •   dhnUphp · 2014-07-24 11:06:41 +08:00 · 4201 次点击
    这是一个创建于 3804 天前的主题,其中的信息可能已经有所发展或是发生改变。
    15 条回复    2014-07-24 18:40:46 +08:00
    em70
        1
    em70  
       2014-07-24 11:13:09 +08:00 via Android
    不要把二进制数据放数据库里面,虽然可以,但性能很差。

    常规做法是把图片文件地址存数据库,一个文本字段即可。
    dhnUphp
        2
    dhnUphp  
    OP
       2014-07-24 11:35:40 +08:00
    @em70 我知道是存文件地址,问题是我现在一次性存一组照片,要的时候还要一次性取出来,数量不固定
    wingoo
        3
    wingoo  
       2014-07-24 11:37:02 +08:00
    你自己需求都不说清楚
    dong3580
        4
    dong3580  
       2014-07-24 11:40:04 +08:00
    @dhnUphp
    这有什么关系呢?一次性查几条出来,一次性插入几条进去,数据库操作而已,不要把它联想成图片,数据库层面和文字是一样的,只不过拿出来数据之后在html中加的标签不一样,仅此。
    shyrock
        5
    shyrock  
       2014-07-24 11:43:51 +08:00
    先说说你这个相册里面的照片想以什么数据结构保存吧,列表?树?最常用的访问方式是流动浏览?随机抽取?根据条件筛选?
    rming
        6
    rming  
       2014-07-24 11:54:05 +08:00
    对照片先分类,然后保存啊
    rming
        7
    rming  
       2014-07-24 11:55:26 +08:00   ❤️ 1
    photography 表 ,pid, photo ,cid
    category 表 ,cid , name

    CREATE TABLE photography(pid INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , photo VARCHAR(256) DEFAULT NULL ,cid INT(10) UNSIGNED DEFAULT NULL );

    CREATE TABLE category(cid INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , name VARCHAR(256) DEFAULT NULL );

    SELECT * FROM photography WHERE cid='123' LIMIT 15 OFFSET 0;

    用外键cid来对主键pid进行分类。。。
    tokune
        8
    tokune  
       2014-07-24 11:57:57 +08:00
    加多个分组的字段就好了吧。

    query量多少。。这个很好控制啊
    MasterYoda
        9
    MasterYoda  
       2014-07-24 12:53:44 +08:00
    存数据库里对应的md5值,实体数据存memcache或者redis.
    MasterYoda
        10
    MasterYoda  
       2014-07-24 13:13:07 +08:00
    @MasterYoda
    其实一般是实体数据存小文件系统,用memcache做缓存啥的。数据库怎么建表不关键吧,分组字段搞好就行。
    mufeng
        11
    mufeng  
       2014-07-24 13:25:12 +08:00
    多表联查
    lovesky
        12
    lovesky  
       2014-07-24 14:48:34 +08:00
    @em70 我司全是数据库存图,性能不错哦,我觉得这要看你怎么用了。
    muziyue
        13
    muziyue  
       2014-07-24 15:02:12 +08:00
    tag url id 个人用就ok了吧 实在强迫症就弄俩表
    20150517
        14
    20150517  
       2014-07-24 15:02:57 +08:00 via Android
    如果强调搜索或tags的大量图片,可以gridfs,如果图片不多,可以存文件系统cdn,会便宜些
    mikej
        15
    mikej  
       2014-07-24 18:40:46 +08:00
    json_encode(array('pic1_url', 'pic2_url'....)),然后存入db不就ok?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   894 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 22:22 · PVG 06:22 · LAX 14:22 · JFK 17:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.