[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: общий auto_increment в двух таблицах
Tumour
Здравствуйте, у меня возникла проблема.
Нужно ai из двух таблиц, сделать разным, то есть, что мои id в двух таблицах были разными.
Помогите пожалуйста, почему - то гугл отказывается мне сегодня помогать.

Есть некоторые варианты как это сделать, но это получится, как - то...
Может у кого, есть мысли по этому поводу?

_____________
Путешествуй с BookRestEasy.com
twin
Ничего не понятно. Подробнее опиши задачу.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Tumour
twin
Таблица №1
id | name
1
2
3
4
8

Таблица №2
id | name
5
6
7

Две таблицы, с разными id

_____________
Путешествуй с BookRestEasy.com
twin
Есть в sql функция MAX(). Вот перед вставкой нужно вынуть максимальный ид из второй таблицы и прибавить 1. Правда не так просто, нужно учесть еще максимальный в текущей таблице.

А вообще, нафига такая сложность?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
FatCat
Цитата (Tumour @ 7.06.2016 - 23:47)
то есть, что мои id в двух таблицах были разными

Лучше сделать в одной таблице с двойным комплектом полей, а при селекте забирать нужные.

Или третью таблицу, в которой будет айдишник по инкременту и связь с двумя другими таблицами.

_____________
Бесплатному сыру в дырки не заглядывают...
Игорь_Vasinsky
id использовать как уникальный идентификатор строки в таблице
а для твоих фокусов использовать доп. поле для номера

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Tumour
twin
У меня 2 таблицы пользователей, они отличаются, по этому в одну таблицу не смог запихнуть.
Сейчас хочу сделать обмен сообщениями, делать хотел таблицу вида

id | from_id | to_id |


И эти 2 вида пользователей могут обменится между собой сообщениями
Я подумал, а если

получится, так что from_id = 23 и to_id = 23, и при этом они будут разными.
Как мне выборку делать?

Вполне возможно, я что - то сильно намудрил.
В данный момент, я сделал как вы сказали, делаю выборку последнего id и прибавляю к нему +1, либо если в другой таблице то +2, то есть у меня получается четные id и не четные id.
Я думал, что можно как нибудь проще сделать...
И - этого решения, а вдруг пользователь зарегистрируется ему присвоется id, и второй пользователь через 0,0000001 секунду нажмет тоже зарегестрироватся, тогда INSERT у первого пользователя не успеет записать в базу id, и у второго пользователя тоже будет этот id, и в итоге INSERT INTO сделает только одну запись.

_____________
Путешествуй с BookRestEasy.com
twin
Если у тебя в одной четные, а в другой нечетные, то не нужно брать их из разных таблиц. Из текущей и бери)

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Tumour
twin
Сообщение может отправить пользователь из 1 таблицы, а получить его пользователь из 2


_____________
Путешествуй с BookRestEasy.com
twin
Да все верно ты делаешь. Это я не понял немного. А чтобы избежать дублей, можно залочить таблицу.

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Tumour
Это получается вот так:

LOCK TABLES
INSERT
UNLOCK TABLES

?

_____________
Путешествуй с BookRestEasy.com
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.