Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
есть две таблицы один ко многим t1(idt1,поле1) t2(idt2,поле1,поле2...fk_idt1),idt1 и idt2:autoincrement как мне заполнить fk_idt1 из idt1 делаю insert into t2 (fk_idt1) select idt1 from t1 where t2.поле1=t1.поле1 пишет unknown column t2.поле1 in where clause ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2013, 18:22 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Правильно. Часть SELECT запроса не содержит в списке таблиц t2. Да и вообще глупость... с какой записью в таблице t2 ты намерен сравнивать, есть ты её только собираешься вставить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2013, 18:26 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Хорошо, а как лучше организовать insert(запись) fk_idt1 если t1 заполнена и условием могут быть поле:дата, поле1 обеих таблиц t1(idt1,дата,поле1) t2(idt2,дата,поле1,поле2...fk_idt1),idt1 и idt2:autoincrement. Или у меня концептуально что-то нет так? Вообще задача заполнить обе таблицы данными из файла, при условии что idt1,idt2:autoincrement, подскажите запрос? Вроде классический пример, но не могу найти в сети. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2013, 18:52 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Как не было ни хрена не понять, так и осталось. Пример исходных данных и желаемого результата в студию, что ли... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2013, 21:27 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Илья55Хорошо, а как лучше организовать insert(запись) fk_idt1 если t1 заполнена и условием могут быть поле:дата, поле1 обеих таблиц t1(idt1,дата,поле1) t2(idt2,дата,поле1,поле2...fk_idt1),idt1 и idt2:autoincrement. Или у меня концептуально что-то нет так? Вообще задача заполнить обе таблицы данными из файла, при условии что idt1,idt2:autoincrement, подскажите запрос? Вроде классический пример, но не могу найти в сети. здаётся мне, ТС ищет UPDATE --- update t1 inner join t2 on t2.поле1=t1.поле1 set t2.fk_idt1 = t1.idt1 оно ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2013, 21:34 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Спасибо qwerty112! Так подойдет. Получилось так, напомню есть две таблицы один ко многим t1(idt1,поле1,поле2,поле3...) t2(idt2,поле1,поле2,поле3...fk_idt1),idt1 и idt2:autoincrement, задачача заполнить fk_idt1 таблицы t2 из t1 idt1; idt1 и idt2:autoincrement: 1.Заполняю t1 insert into t1(поле1, поле2,поле3) values(...,...,...), . . . (...,...,...); 2.Заполняю t2 insert into t2(поле1, поле2,поле3) values(...,...,...), . . . (...,...,...); 3.Обновляю fk_idt1 таблицы t2 по условию что t1.поле1=t2.поле1 и t1.поле2=t2.поле2 update t2 inner join t1 on t1.поле1=t2.поле1 and t1.поле2=t2.поле2 set t2.fk_idt1=t1.idt1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 13:46 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Обращаюсь к Вам от безысходности.... Я новичок в mysql и что-то мне тяжело дается тема вставки данных в таблицу, в которой имеется поле с внешним ключом. Есть 2 таблицы: users и cities. Поля users: user_id (AI primary), user_name, user_age, city_id. Поля cities: city_id (AI primary), city_name. city_id из cities - внешний ключ для users. Таблица cities заполнена, a users нужно заполнить через отправку данных с формы, причем город выбирается из выпадающего списка. Я делаю запрос в php: INSERT INTO users (user_name, user_age, city_id) SELECT city_id FROM cities WHERE city_name = '".$_POST['user_city']. "'; А в ответ ошибка: Ошибка вставки данных в таблицу users: Column count doesn't match value count at row 1. И как не старайся, не получается, всегда ошибка. Помогите..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2017, 00:08 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
rybachok91в ответ ошибка: Ошибка вставки данных в таблицу users: Column count doesn't match value count at row 1. Ну правильно... сколько полей вставляется? считаем: Код: sql 1. А сколько выбирается запросом? Код: sql 1. насколько я помню курс начальной школы, 3 и 1 не равны. О чём и сообщает сервер. Но это полбеды. Даже если довести запрос до ума, он не выполнит того, что хочется. Тебе же хочется взять существующую запись для некоего юзера с пустым полем города, и изменить в ней значение города на нужное. В то время как INSERT вставит НОВУЮ запись, а существующая так и останется с пустым полем города. Т.е. запрос должен быть на обновление, а не пополнение, данных. Причём на обновление только одной записи, именно той, юзер из которой в данный момент отображается на форме. Что-то типа Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2017, 07:43 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Akina, спасибо Вам, что ответили. Я делаю отправку и прием данных через AJAX. Сначала принимаю список городов, а потом отправляю информацию о пользователях. И сейчас мне "success" возвращает пустое окошко. Я не могу сообразить, что не так. Помогите..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2017, 12:32 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
Akina, т.е. если мне возвращает alert окно, значит, данные должны попасть в таблицу. А их нет, и ошибок нет((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2017, 12:41 |
|
||
|
Как заполнить Foreign Key?
|
|||
|---|---|---|---|
|
#18+
PHP - это в другом форуме. Вот тут . И да - скриншоты никому не нужны, мы по фотографиям не лечим. Коды и сообщения об ошибках дают текстом, в соответствующих тегах. И всегда пользуйтесь предпросмотром, чтобы убедиться, что сообщение выглядит как надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2017, 14:13 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=68&tid=1830438]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 265ms |
| total: | 392ms |

| 0 / 0 |
