Re: CSV storage InnoDB?

Matt Pelmear <[email protected]>
Newsgroups gmane.comp.php.database
Message-ID <[email protected]>
BLOB and TEXT are basically the same thing, except that BLOB can be used 
for storing binary data (like an image).

You would only need one additional table to do what I was describing, 
but if you're dead-set on using a comma separated list then TEXT or 
LONGTEXT is probably what you want, depending on how large you 
anticipate those lists becoming.
If you care about efficiency you may want to look at this blog post: 
http://www.mysqlperformanceblog.com/2010/02/09/blob-storage-in-innodb/

-Matt

On 11/26/2012 09:55 PM, Karl DeSaulniers wrote:
>
> Hi guys,
> Thanks for your responses.
> I do have a auto incremented id for the codes. Yes multiple product 
> can have the same code. Table is as follows.
>
> CREATE TABLE `discounts` (
>   `d_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
>   `p_id` int(10) unsigned NOT NULL DEFAULT '0',
>   `d_discode` varchar(16) CHARACTER SET utf8 NOT NULL DEFAULT '',
>   `d_type` enum('item','cart') NOT NULL DEFAULT 'item',
>   `d_discamt` float(5,2) unsigned NOT NULL DEFAULT '0.00',
>   `d_discper` int(3) unsigned NOT NULL DEFAULT '0',
>   `d_qty` int(10) unsigned NOT NULL DEFAULT '0',
>   `d_description` varchar(25) CHARACTER SET utf8 NOT NULL DEFAULT '',
>   `d_expire` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
>   `d_user` varchar(30) CHARACTER SET utf8 NOT NULL DEFAULT '',
>   `d_userip` varchar(15) CHARACTER SET utf8 NOT NULL DEFAULT '',
>   `d_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
>   PRIMARY KEY (`d_id`),
>   KEY `d_discode` (`d_discode`),
>   KEY `d_expire` (`d_expire`)
> ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ;
>
> This is where the discounts and their codes and any info are stored 
> including who set the discount (this user does not apply to our 
> situation, FYI).
> Then in say the user table I set the codes that user gets to use.
> ...
>  `u_discodes`  (???This is my question. What to use???) CHARACTER SET 
> utf8 NOT NULL DEFAULT '',
> ...
>
> I just need to store the separate codes a user has available to them 
> here. So what would be the best suited?
> I am thinking a blob or text, because like tamouse said, I can explode 
> the results and or check an in_array on the results.
> It seems the logical route to me for what I am doing. u_discodes just 
> is a reference to check against.
> I then apply the amounts or percentages according to what is in the 
> discounts table for that code.
>
> Am I moling this?  Missing something?
> I'd like ( I guess ) to stay away from creating separate tables that 
> hold the references for users, products, carts, etc and their codes.
> To me the blob seems so much simpler.
>
> But alas, I may have answered my own question.
>
> : \
>
> Best,
> Karl
> Karl DeSaulniers
> Design Drumm
> http://designdrumm.com
>
>


-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.