базата mysql в MySQL - SET
3 отговора
377 прегледа
базата mysql в MySQL - SET
Някой може ли да ме просветли защо в базата данни mysql на mysql СУБД веднъж е използван типа SET (в таблици tables_priv,columns_priv) а в db таблицата са ползвани много колони с enum('Y','N'). Не е ли целта една и съща...защо е реализирано по различен начин?
Благодаря предварително за мненията.
Благодаря предварително за мненията.
Re: базата mysql в MySQL - SET
От мануала:
a column specified as SET('one', 'two') NOT NULL can have any of these values:
''
'one'
'two'
'one,two'
Демек, при SET можеш да имаш стойност която се състои от повече от една от разрешените при дефиницията стойности, разделени със запетая.
Що така са го направили, не знам, salle предполагам може да обясни. А и да даде по-нормална дефиниция на разликата между двата типа колони :)
a column specified as SET('one', 'two') NOT NULL can have any of these values:
''
'one'
'two'
'one,two'
Демек, при SET можеш да имаш стойност която се състои от повече от една от разрешените при дефиницията стойности, разделени със запетая.
Що така са го направили, не знам, salle предполагам може да обясни. А и да даде по-нормална дефиниция на разликата между двата типа колони :)
Re: базата mysql в MySQL - SET
То е ясно каква е разликата между enum и set типове колони. Със set си спестяваш many-to-many relations примерно.
Въпроса е че в случая целта коята трябва да се постигне (да се/да не се даде права върху колона/таблица/база данни) е една и съща. Просто при базите е реализирано с колони от топ енум а при колони и таблици е с тип сет.
Има ли някакво функционално обяснение - или просто на хората така им харесва
Въпроса е че в случая целта коята трябва да се постигне (да се/да не се даде права върху колона/таблица/база данни) е една и съща. Просто при базите е реализирано с колони от топ енум а при колони и таблици е с тип сет.
Има ли някакво функционално обяснение - или просто на хората така им харесва
Re: базата mysql в MySQL - SET
Честно казано не помня а и ме мързи да разпитвам колегите що така.
mysql.* таблиците се зареждат в паметта при стартиране така, че няма някаква огромна разлика.
salle.online.bg/sig
mysql.* таблиците се зареждат в паметта при стартиране така, че няма някаква огромна разлика.
salle.online.bg/sig