[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: INSERT INTO начиная с 1 строки
Страницы: 1, 2
nvrskozzy
Здравствуйте, у меня колонки в таблице не связаны друг с другом, это кагбы разные списки данных, выбираю их по названию таблицы.
есть колонка id autoinc
засада в том, что если в 1 колонке 100 строк, создаём вторую, запись в неё через INSERT INTO начнётся с 101 строки, а предыдущие 100 будут пустые, можно начать запись с 1 строки?

возможно неправильно структуру базы создал, не знаю, вчера начал только mysql изучать, идея с хранением данных по колонкам будет работать, если INSERT INTO заставить с 1 строки писать или с последней пустой)

буду благодарен за любые советы

_____________
rooor
o_O ничего не понял...

естественно, при вставке будет новая строка, 101 или какая там... не суть)
чтобы заполнить другие ячейки в этой же строке есть UPDATE
rooor
кажется начал немного понимать...
Цитата
если в 1 колонке 100 строк, создаём вторую,

всё наоборот) в таблице данные считаются строками, а не колонками, строка одна, колонок - сколько угодно.
если добавить одну запись, то добавляется СТРОКА, чтобы изменить содержимое колонок уже добавленной строки, надо через UPDATE указать номер строки и названия колонок, которые надо изменить
nvrskozzy
спасибо, точно update)
а как тогда лучше базу организовать) не хочется много таблиц создавать, думал колонки будут вместо таблиц.
таблица такая:
id site.ru site2.ru
1 текст1 текст1
2 текст2 текст2
3 текст3

тоесть название колонки - адрес сайта, строки - текста для сайтов, добавляю в таблтцу ноые сайты добавлением колонки, и потом надо добавить список текстов к новой колонке..
походу mysql не для такой схемы был создан)
как лучше такие данные хранить в базе? сайтов много будет, ну и текстов тоже)

_____________
nvrskozzy
а можно проверку сделать на существование строки, если есть то update, если нет то insert

_____________
rooor
в базе будет таблица с полями(колонками), например, id | title | text | url
соответственно и данные в эту таблицу будут вносится строками:
1 | site1 | text1 | http://site1.ru
2 | site2 | text2 | http://site2.ru
rooor
Цитата
если есть то update, если нет то insert
nvrskozzy
Цитата (rooor @ 5.06.2013 - 16:34)
в базе будет таблица с полями(колонками), например, id | title | text | url
соответственно и данные в эту таблицу будут вносится строками:
1 | site1 | text1 | http://site1.ru
2 | site2 | text2 | http://site2.ru

на каждый сайт сотни текстов, если построчно так записывать нужно будет сотни повторений делать для каждого текста)

_____________
rooor
а зачем всё в одну таблицу писать?
Нормальная форма
rooor
1 таблица - 2 колонки -> id, site
2 таблица - 2 колонки -> id, text
3 таблица - 3 колонки -> id, id_site, id_text

в третей таблице id не обязательно, можно составной индекс прилепить)
nvrskozzy
ну сайтов будут десятки если не сотни, и тексты для каждого свои, получается на каждый сайт таблицу отдельную? тогда вся база будет забита этими таблицами, этого и не хотел, для компактности удобности и наглядности хотел в 1 засунуть)

была бы какая-нить вложенность таблиц, или можно было бы сгруппировать кучу однотипных таблиц, а не в корне базы весь огромный список таблиц)


_____________
rooor
Цитата
получается на каждый сайт таблицу отдельную

таблиц будет 3. я думаю вам надо начать с самых основ... это элементарщина...
nvrskozzy
Цитата (rooor @ 5.06.2013 - 16:36)
Цитата
если есть то update, если нет то insert

так и сделал)
foreach($text as $key => $value) { //обновляем таблицу текстов
mysql_query("INSERT INTO `texts` SET `$domen`= '$value', id=$key+1 ON DUPLICATE KEY UPDATE `$domen`= '$value'");
}

каждый текст в свой ключ поочереди загоняет с 1 начиная

_____________
nvrskozzy
......

_____________
nvrskozzy
Цитата (rooor @ 5.06.2013 - 19:09)
Цитата
получается на каждый сайт таблицу отдельную

таблиц будет 3. я думаю вам надо начать с самых основ... это элементарщина...

кажись понял, чё-то меня на столбцы понесло, сам себе жизнь усложнил)

_____________
Быстрый ответ:

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