[Phpmyadmin-devel] about the central columns table

Smita kumarismita62 at gmail.com
Sun May 25 15:27:13 CEST 2014


On Sun, May 25, 2014 at 5:15 PM, Marc Delisle <marc at infomarc.info> wrote:

> Le 2014-05-25 06:48, Smita a écrit :
> >
> >
> > On Sat, May 24, 2014 at 11:53 PM, Smita <kumarismita62 at gmail.com
> > <mailto:kumarismita62 at gmail.com>> wrote:
> >
> >
> >
> >     On Sat, May 24, 2014 at 10:25 PM, Marc Delisle <marc at infomarc.info
> >     <mailto:marc at infomarc.info>> wrote:
> >
> >         Le 2014-05-24 12:16, Smita a écrit :
> >         >
> >         >
> >         > On Sat, May 24, 2014 at 9:24 PM, Marc Delisle
> >         <marc at infomarc.info <mailto:marc at infomarc.info>
> >         > <mailto:marc at infomarc.info <mailto:marc at infomarc.info>>>
> wrote:
> >         >
> >         >     Le 2014-05-24 11:03, Smita a écrit :
> >         >     >
> >         >     >
> >         >     > On Sat, May 24, 2014 at 7:49 PM, Marc Delisle
> >         <marc at infomarc.info <mailto:marc at infomarc.info>
> >         >     <mailto:marc at infomarc.info <mailto:marc at infomarc.info>>
> >         >     > <mailto:marc at infomarc.info <mailto:marc at infomarc.info>
> >         <mailto:marc at infomarc.info <mailto:marc at infomarc.info>>>> wrote:
> >         >     >
> >         >     >     Hi Smita,
> >         >     >     I have a doubt, looking at the structure you chose
> >         for this table:
> >         >     >     db_name
> >         >     >     column_list
> >         >     >
> >         >     >     This structure implies that, for any change, you
> >         have to load a
> >         >     >     potentially big row, decode it and encode it.
> >         Imagine that
> >         >     there are
> >         >     >     hundreds or thousands of column definitions for this
> db.
> >         >     >
> >         >     >     I suggest something like:
> >         >     >
> >         >     >     db_name
> >         >     >     column_name
> >         >     >     column_attributes
> >         >     >
> >         >     > Yeah, agree. Thanks, It would be better to keep this.
> :-).
> >         >     > I have a question: If we have "id interger(11) not null
> >         >     auto_increment"
> >         >     > already existing in central list, should we allow to add
> >         another
> >         >     column
> >         >     > "id integer(20) not null auto_increment" ? If we don't
> >         allow then
> >         >     we can
> >         >     > also keep structure like maybe:
> >         >     > db_name
> >         >     > column_name
> >         >     > column_type
> >         >     > column_collation
> >         >     > column_isNull
> >         >     > column_extra
> >         >     >
> >         >     > - Smita
> >         >     >
> >         >
> >         >     In a central list, there should be only one column named
> >         "id" (but this
> >         >     choice of name would be problematic, of course; a better
> >         choice would be
> >         >     "customer_id").
> >         >
> >         > So We'll allow only unique column name. If same column name
> with
> >         > different definition tried to add we just show the column name
> >         (with
> >         > defination) already exist?
> >
> >         Yes; eventually I guess that in your project, there will be a
> way to
> >         directly view the central list and change column definitions.
> >
> >     Yeah, I need to make a page to manage central columns, there users
> >     can view complete list of columns and edit some if they want.
> >
> >         >
> >         >     Another example is "phone_number"; which is reused in the
> >         customer table
> >         >     and in the salesperson table. You might want to always use
> >         CHAR(25) for
> >         >     phone numbers.
> >         >
> >         >     So it's a good idea to split the attributes into separate
> >         columns like
> >         >     in your example. The default value could be there too.
> >         >
> >         > Ok, thanks. We'll keep default as well.
> >
> >
> > Hi Marc,
> > I redesigned the database as discussed.  I completed the adding columns
> > part but I got stuck when came to deletion. I have a question.
> > Let say I have two tables tbl1 and tbl2, both table has a common column
> > name "phone_number". So If user selects both tables and asks to add
> > unique columns to central list, then we are gonna add just one
> > "phone_number" , let say we add the column/definition "phone_number"
> > from tbl1. now let say user select tbl2 and ask to remove columns from
> > central list. What should it do ? should it remove the column
> > "phone_number" from central list or not ? as "phone_number" was added
> > from tbl1.  but "phone_number" exists in tbl2 as well.
> >
> > - Smita
>
> I say we should remove it from the central list. It's up to the user, to
> use the feature in a correct way.
>
> Yeah, agree.


> Anyway, say the user added phone_number in tbl3 but never used any
> central column option on tbl3. phpMyAdmin won't know that this
> phone_number in tbl3 possibly has a different definition, unless there
> is an option to manually validate all the tables against the central list.
>
>
While adding new columns in tbl3, user could have used the central list to
add the "phone_number" column, that way he wont end up writing wrong
name/definition. But  Yes, validating table against central list is another
option that we can add . And can be applied to existing columns in the
system and also to those that have not been added through PMA UI.

--
Marc Delisle | phpMyAdmin

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform
available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Phpmyadmin-devel mailing list
Phpmyadmin-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/phpmyadmin-devel

>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.phpmyadmin.net/pipermail/developers/attachments/20140525/e308a31e/attachment.html>


More information about the Developers mailing list