Сорри, что криво объяснил.
OC - *nix, БД - MySQL. В БД три таблицы table_admin, table_users, table_names. В таблице table_names три поля - user_id, val1, val2.
user_id - это primary key, автоинкримент.
Я обращаюсь к скрипту, в котором есть такой запрос:
INSERT table_names SET user_id=1 val1=firstname, val2=lastname
с val2 я могу делать все что угодно.
Я хочу либо слить таблицу table_users либо добавить запись в table_admin.
Случай 1. Я могу привести запрос к виду:
INSERT table_names SET user_id=1, val1=firstname, val2=(select {Что_угодно} from table_users limit 1)
После чего весь нужный мне вывод попадает в val2 , но я его не вижу. Т.к. SELECT val2 у меня нигде не встречается.
Сообщение от
Konqi
а INSERT INTO outfile в первые слышу
Здесь я конечно ерунду написал.
Я имел ввиду, что если бы у меня были права на запись в какой-нибудь файл, то я мог бы попробовать сделать
INSERT table_names SET val1=firstname, val2=(select * from table_users into outfile 'file.txt'). Но так писать в файл я по-видимому не могу =(
Сегодня попробовал на локалхосте:
SELECT username from table_users where user_id=1 INTO outfile 'file.txt' - так работает, файл создается
INSERT table_names SET val1=firstname, val2=(SELECT username FROM table_users WHERE user_id=1 INTO outfile 'file.txt') - так не работает =(
Случай 2. Оставив попытки вывести select * from table_users, я хотел добавить запись в table_admin. Пробовал так:
INSERT table_names SET user_id=1 val1=firstname, val2=(lastname on duplicate key update table_admin SET )
user_id передаю заведомо дублирующийся.
Но насколько я понял, таким запросом с таблицей table_admin ничего не поделаешь. А точнее так - таким запросом не возможно воздействовать ни на какую таблицу кроме table_names. Так ли это?
Что еще можно попробовать сделать в первом и втором случае?