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

Форум MySQL

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

 

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

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

тема: PHP + MySql - порядкового номер записи
 
 автор: Jenia   (30.10.2004 в 02:13)   письмо автору
 
 

Имеется столбец, во всех полях которого значение NULL, нужно ввести в каждое поле порядковый номер, то есть 1, 2,
3, ... ,2413. Написал на PHP скрипт:

for($n=1; $n <= 2413; $n++)
{
$query = "INSERT INTO bolnica(number) VALUE($n)";
mysql_query($query);

}

Но он начинает вводить порядковый номер не с первого поля, а с последнего - 2413-ого, и создаёт 2413
дополнительных полей. Где ошибка?

   
 
 автор: Axxil   (30.10.2004 в 10:47)   письмо автору
 
   для: Jenia   (30.10.2004 в 02:13)
 

INSERT добавляет строку в таблицу. А вам нужно изменить поле. Для это воспользуйтесь UPDATE:
$query="UPDATE bolnica SET number=$n"

А может вам лучше было бы создать первичный ключ со значением поля autoincrement. И тогда порядковый номер генерировался бы автоматически при добавлении новой записи.

   
 
 автор: cheops   (30.10.2004 в 11:37)   письмо автору
 
   для: Axxil   (30.10.2004 в 10:47)
 

>А может вам лучше было бы создать первичный ключ со
>значением поля autoincrement. И тогда порядковый номер
>генерировался бы автоматически при добавлении новой записи.
Да в этом случае даже делать ничего не понадобилось бы - при создании индекса с атрибутом auto_increment в уже существующей таблице с 2413 записями - значения индекса автоматически бы получили номера от 1 до 2413.

   
 
 автор: Axxil   (30.10.2004 в 12:29)   письмо автору
 
   для: cheops   (30.10.2004 в 11:37)
 

А индекс по какому полю создавать? В любом случае наверное придётся выделять индексирующее поле. А если изначально создать поле с первичным ключом, тогда будет намного удобнее работать с таблицей.

   
 
 автор: cheops   (30.10.2004 в 12:31)   письмо автору
 
   для: Axxil   (30.10.2004 в 12:29)
 

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

   
 
 автор: Axxil   (30.10.2004 в 14:25)   письмо автору
 
   для: cheops   (30.10.2004 в 12:31)
 

Точно :)

   
Rambler's Top100
вверх

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