Jump to content
php.lv forumi

kārtējais SQL


kalabox

Recommended Posts

Tātad, ir šāda sql tabula

 

CREATE TABLE `ds_comment_threads` (

`thread_id` int(11) unsigned NOT NULL auto_increment,

`image_id` int(11) unsigned NOT NULL default '0',

`thread_status` enum('queued','approved','disabled') NOT NULL default 'queued',

`updated` timestamp(14) NOT NULL,

`created` timestamp(14) NOT NULL default '00000000000000',

PRIMARY KEY (`thread_id`),

KEY `thread_status` (`thread_status`)

) ENGINE=MyISAM;

 

un no šīs tabulas met ārā šādu kļūdu

 

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(14) NOT NULL,

`created` timestamp(14) NOT NULL default '00000000000000',

' at line 5

Link to comment
Share on other sites

1. izmantojot ENUM rodas situācija, ka dati atrodas tabulas shēmā.

2. ENUM kolonās dati tiek definēti kā string's, bet glabāti kā skaitlis.

3. vērtības ENUM kolonā ir piesaistītas secībai, kurā tu tās definēji

4. pievienojot jaunu variantu, ir jāatkārto visas iepriekš esošās vērtības precīzi tādā pašā secībā

5. ja tu vairs neizmanto kādu vērtību, tā tik un tā ir jāatkārto pie katras tabulas alterācijas

 

Tām vērtībam būtu jābūt citā tabulā un piesaistītām caur FOREIGN KEY.

Link to comment
Share on other sites

1. izmantojot ENUM rodas situācija, ka dati atrodas tabulas shēmā.

2. ENUM kolonās dati tiek definēti kā string's, bet glabāti kā skaitlis.

3. vērtības ENUM kolonā ir piesaistītas secībai, kurā tu tās definēji

4. pievienojot jaunu variantu, ir jāatkārto visas iepriekš esošās vērtības precīzi tādā pašā secībā

5. ja tu vairs neizmanto kādu vērtību, tā tik un tā ir jāatkārto pie katras tabulas alterācijas

 

Tām vērtībam būtu jābūt citā tabulā un piesaistītām caur FOREIGN KEY.

 

2. un?

3. Izmēģināju - nesanāca sastapt kaut kādas problēmas mainīt secību enum vērtībām

4. Izmēģināju - pofig kādā secībā definēju, spraust jauno vērtību varu kur gribu

5. Izmēģināju izmest kādu enum vērtību. Ierakstos kur tā tika izmantota palika tukšums, tā kā neredzu nekādas problēmas.

 

Neredzeu nevienu jēdzīgu (vispār kādu?) iemeslu, lai nelietotu enum.

Protams, ja enum vērtības ir daudz, tad ir jēdzīgāk glabāt atsevišķā tabulā lai shēma nebūtu uz-bloat-ota.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...