ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #541  
Старый 30.03.2009, 11:46
Аватар для Glazz
Glazz
Участник форума
Регистрация: 09.08.2008
Сообщений: 139
Провел на форуме:
560332

Репутация: 15
По умолчанию

Эм.. с SQL сильно не знаком, но как можно хранить часть таблици в тексте, чтоб потом её залить в таблицу, при помощи COPY.
Т.е. мне нужно сделать примерно 300 вставок, и каждый раз писать INSERT как то не то.
 
Ответить с цитированием

  #542  
Старый 30.03.2009, 12:15
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Glazz, во-первых, чтобы вставлять с файла тебе нужен будет файлприв, а давать файл прив на публичном веб-сервере - это гиблое дело. Не нужно так делать. Если это единчиная практика, то для этого давно изобрели:

Код:
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [{FIELDS | COLUMNS}
        [TERMINATED BY 'string']
        [[OPTIONALLY] ENCLOSED BY 'char']
        [ESCAPED BY 'char']
    ]
    [LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']
    ]
    [IGNORE number LINES]
    [(col_name,...)]
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [{FIELDS | COLUMNS}
        [TERMINATED BY 'string']
        [[OPTIONALLY] ENCLOSED BY 'char']
        [ESCAPED BY 'char']
    ]
    [LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']
    ]
    [IGNORE number LINES]
    [(col_name,...)]
О чём вообще речь идёт? О MySQL?
 
Ответить с цитированием

  #543  
Старый 30.03.2009, 12:23
Аватар для Glazz
Glazz
Участник форума
Регистрация: 09.08.2008
Сообщений: 139
Провел на форуме:
560332

Репутация: 15
По умолчанию

Цитата:
Сообщение от groundhog  
Glazz, во-первых, чтобы вставлять с файла тебе нужен будет файлприв, а давать файл прив на публичном веб-сервере - это гиблое дело. Не нужно так делать. Если это единчиная практика, то для этого давно изобрели:



О чём вообще речь идёт? О MySQL?
MySQL. Т.е. записывать данные в таблицу из файла? хм... а что в качестве файла указывается? путь до файла ? А какой вил имеет этот фаил, чтоб его можно было составить самому.
 
Ответить с цитированием

  #544  
Старый 30.03.2009, 12:43
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Ничего сложного... Например, есть такая таблица:

Код:
CREATE TABLE `some_table` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`some_field1` VARCHAR( 255 ) NOT NULL ,
`some_field2` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
)
и есть такой файл:

Код:
1,Test content 1.1,Test content 1.2
2,Test content 2.1,Test content 2.2
3,Test content 3.1,Test content 3.2
4,Test content 4.1,Test content 4.2
5,Test content 5.1,Test content 5.2
6,Test content 6.1,Test content 6.2
7,Test content 7.1,Test content 7.2
8,Test content 8.1,Test content 8.2
то в самом просто случае, запросом вида:

Код:
LOAD DATA INFILE 'С:\\Temp\\some_file.txt' INTO TABLE some_table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
Можно провести вставку записей в таблицу из файла, где , (запятая) указывает символ которым разделены значения полей, а \n (перевод строки) указывает символ которым разделены строки.
 
Ответить с цитированием

  #545  
Старый 30.03.2009, 13:13
Аватар для Glazz
Glazz
Участник форума
Регистрация: 09.08.2008
Сообщений: 139
Провел на форуме:
560332

Репутация: 15
По умолчанию

Цитата:
Сообщение от groundhog  
Ничего сложного... Например, есть такая таблица:



и есть такой файл:



Можно провести вставку записей в таблицу из файла, где , (запятая) указывает символ которым разделены значения полей, а \n (перевод строки) указывает символ которым разделены строки.
а если я хочу не из файла, а из переменной залить в бд? допустим я состряпаю char todb[4000] в котором допустим так же все написано.
 
Ответить с цитированием

  #546  
Старый 30.03.2009, 13:24
Аватар для groundhog
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
Провел на форуме:
2238549

Репутация: 1318


Отправить сообщение для groundhog с помощью ICQ
По умолчанию

Ну запиши это в файл и вставляй... MySQL может вставлять данные из файловой системы, или данные, переданные непосредственно в запросе, ему по уху, что ты там себе за переменные придумал и что ты с ними собираешься делать. У MySQL все команды манипулирования данных чётко документированы. Ничего нового ты не найдёшь.
 
Ответить с цитированием

  #547  
Старый 05.04.2009, 22:30
Аватар для Byrger
Byrger
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме:
791766

Репутация: 61
По умолчанию

В чём ошибка?
Цитата:
INSERT INTO table SET (p_res1,p_res2,p_res3,p_res4) VALUES (1,2,3,4)
Цитата:
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 '(p_res1,p_res2,p_res3,p_res4) VALUES (1,2,3,4)' at line 1
 
Ответить с цитированием

  #548  
Старый 06.04.2009, 11:59
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

INSERT INTO название_таблицы (p_res1,p_res2,p_res3,p_res4) VALUES (1,2,3,4) or die('Ошибка' . mysql_error());
 
Ответить с цитированием

  #549  
Старый 09.04.2009, 22:18
Аватар для bxN5
bxN5
Постоянный
Регистрация: 08.01.2006
Сообщений: 865
Провел на форуме:
3279330

Репутация: 343


Отправить сообщение для bxN5 с помощью ICQ
По умолчанию

чет я туплю , есть таблица users
id ... bonus
в бонус надо добавлять текст
INSERT INTO users ('bonus') VALUES ('".$values."') WHERE id = 'id'
понимаю что where там не кстати , как его составить правильно?

п/с не пинайте)
 
Ответить с цитированием

  #550  
Старый 09.04.2009, 22:21
Аватар для VDShark
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме:
804931

Репутация: 526
По умолчанию

2 bxN5
UPDATE
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сетевой этикет (Перед тем, как задать вопрос хакеру) satana-fu Статьи 7 21.10.2009 07:40
Ответы на часто задаваемые вопросы + линки на статьи по SQL/XSS/PHP-инклуд Jokester Уязвимости 2 28.06.2009 00:19
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости 4 07.07.2006 16:53



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ