Как автоматически добавлять столбцы в существующую таблицу при добавлении записей? - PullRequest
0 голосов
/ 06 сентября 2011

Допустим, у меня есть записи, добавляемые в таблицу с помощью хранимой процедуры. Например,

|ID| |stat| |userID|  
|1 | | 0.1| | 1 |    
|2 | | 0.2| | 1 |  
|3 | | 0.4| | 2 |  
|4 | | 0.1| | 2 |  
|5 | | 0.2| | 3 |  
|6 | | 0.4| | 3 |   
|7 | | 0.5| | 4 |   (new record added by stored procedure)

Как бы эти записи автоматически добавляли столбцы в новую таблицу? Это то, что я хочу (верхняя строка - это идентификатор пользователя из предыдущей таблицы по мере их добавления):

|ID|| 1|| 2 || 3 ||4(new)|  
|1||0.1||0.4||0.2||0.5|  
|2||0.2||0.1||0.4|

Я пробовал это:

CREATE DEFINER='storedProc'(in inputUser INT, in inputStat INT)  
...  
IF something THEN
    CREATE TABLE test(
    index INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    inputStat INT)  
    ...some insert queries  
ELSE
    ALTER TABLE test
    ADD(inputUser INT);
    ...some insert queries

Делая это, вы не добавляете 4 к последнему столбцу, а просто «stat» на его месте. Я не уверен, что выбрал правильный подход, но надеюсь, что я был ясен с моим вопросом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...