Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вставка строки в таблицу
 
 автор: Паша   (24.10.2007 в 20:25)   письмо автору
 
 

Ребята, подскажите, когда я вставляю новую строчку в таблицу, оно вставляется вначале, как я понял? А можно ли её вставить в конец?
P.S.: Тут я последил и обнаружил что вставка происходит вобще не по понятному мне принципу, то в конце, то в середине, то в начале, объясните пожалуйста этот принцип?

   
 
 автор: provodnik   (24.10.2007 в 20:54)   письмо автору
 
   для: Паша   (24.10.2007 в 20:25)
 

.

   
 
 автор: provodnik   (24.10.2007 в 20:54)   письмо автору
 
   для: Паша   (24.10.2007 в 20:25)
 

У БД НЕТ ни начала, ни конца. Порядок записей проявляется лишь при сортировке.
Если у Вас имеет место быть поле "auto_increment", то с каждым инсертом, это значение будет увеличиваться.
К примеру в таблице есть записи с ID (auto_increment) = 1, 2, 3. То при вставке следующей строки, id станет равным 4. Если Вы удалите строку с id = 4, то при вставке новой строки, id станет равным 5, а не 4. Т.е. строки, где id = 4 не будет вообще... И так далее...
Если требуется вести индекс без пропусков, то икремент Вам не поможет. Нужно ввести новое числовое поле, где искусственно создавать индексы...

А как Вы вообще отслеживаете, на какую позицию встали новые данные? Да и зачем Вам это? Если не секрет конечно :)

   
 
 автор: Паша   (24.10.2007 в 21:09)   письмо автору
 
   для: provodnik   (24.10.2007 в 20:54)
 

Про auto_increment я в курсе и там его нет. отслеживаю с помощью вывода на экран и май админа, а вообще задача следующая - у меня таблица с 1 столбцом и заранее не известно сколько будет строк и мне необходимо чтобы новые данные записывались вконец, после всего. т.е. она будет наполнятся до определённого условия, т.е. если новые данные появятся вначале то их надо не упустить, поэтому и надо в конец, а если они окажутся вначале, то я их не проверю, конечно то что я объяснил наверное не будет понятно. т.к. задача довольно спцефическая и в двух словах её не обрисовать, но всё же может что и предложите!!!

   
 
 автор: Паша   (24.10.2007 в 21:39)   письмо автору
 
   для: Паша   (24.10.2007 в 21:09)
 

Тогда объясните - какой то ведь есть всё равно принцип по которому записи вставляються в таблицу, они ведь когда выводятся без какой-либо сортировки, то выводяться по токой же последовательности как и храняться в БД или я не прав?

   
 
 автор: Ralph   (24.10.2007 в 22:03)   письмо автору
 
   для: Паша   (24.10.2007 в 21:39)
 

В Вашем случае,если Вы обо всем в
курсе,и вас до сих пор волнует вопрос-в каком порядке хранятся строки в БД, я вижу один единственный выход-храните данные в файлах и не морочьте себе голову...Одним из главных достоинств баз данных является то,что вам как раз совершенно не нужно знать,в какой последовательности хранятся строки в таблице или поля в строке

   
 
 автор: provodnik   (25.10.2007 в 10:37)   письмо автору
 
   для: Ralph   (24.10.2007 в 22:03)
 

Что такое таблица? Это и есть обычный текстовый файл. Просто у него специфическая структура данных.
Я думаю, что данные при инсерте просто дописываются в конец этого файла...

Автоинкремент не просто нужен, он необходим...

   
 
 автор: cheops   (25.10.2007 в 11:45)   письмо автору
 
   для: Паша   (24.10.2007 в 21:39)
 

>Тогда объясните - какой то ведь есть всё равно принцип по которому записи вставляються в
>таблицу, они ведь когда выводятся без какой-либо сортировки, то выводяться по токой же
>последовательности как и храняться в БД или я не прав?
Да, но этот порядок может меняться произвольно, особенно при обновлении и удалении записей. Если записей больше, чем одна их лучше сортировать при помощи конструкции ORDER BY по одному из полей.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования