|
|
|
|
|
для: cheops
(08.12.2004 в 16:31)
| | Я тоже с ней не работаю - пусть доведут до ума пока. Спасибо за подсказки, но я и так и сделал, поэтому пределывать нечего, а жаль - хотелось ускорить работу | |
|
|
|
|
|
|
|
для: alexhardware
(08.12.2004 в 16:18)
| | Хреновость текущих версий MySQL заключается в том, что в них нет хранимых процедур - поэтому приходится туда сюда гонять данные по сети... это придётся либо терпеть, либо ставить другую базу данных (MS SQL), либо разбираться с MySQL 5 (поговаривают, что в ней они появились, сам я правда с ней не работал). | |
|
|
|
|
|
|
|
для: cheops
(08.12.2004 в 16:10)
| | используется Direct Objects for MySQL. У меня сначала идет поиск, потом проверка сколько строк вернулось - если 0, то вставляем строку и делаем опять поиск. Но хотелось бы это сделать на MySQL-сервере, а не на локальной машине. А то получается достаточно много обращений по сети, т.к. по этому принципу запрашивается 6 значений. И каждое рыщет в своей таблице. Автоинкремент стоит. | |
|
|
|
|
|
|
|
для: alexhardware
(08.12.2004 в 15:57)
| | А какой компонент используется, не dbExpress часом? Здесь как и в PHP всё может сильно зависить от API-функций компонента...
Вообще сначала следует поискать значение
SELECT * FROM tbl WHERE id=45
|
Если число возвращённых строк будет равно 0, следовательно следует добавить новое значение
INSERT INTO tbl VALIES (NULL,45)
|
Это запрос в предположении, что индекс снабжён атрибутом AUTO_INCREMENT, что автоматически присваиваивает ему значение максимального значения плюс единица.
Далее зависит от компонента, в нём может быть функция возвращающее id, а может и не быть, если его нет следует воспользоваться встроенной функцией LAST_INSERT_ID():
| |
|
|
|
|
|
|
| Может кто подскажет новичку, как сделать запрос. Есть таблица, в которой есть индекс и значение. Надо, чтобы производился поиск по заданному значению и если значения нет в таблице, то оно заносилось туда и в итоге выдавался индекс этого значения.
Запрос нужен для Delphi - поэтому желательно, чтобы все выполнял MySQL, а не Delphi. | |
|
|
|
|