Как да определите наличието на запис в таблица

Здравейте на всички! Възможно ли е в Access да разберете дали в таблицата има запис с определена стойност? Нещо като оператор на T-SQL "ако съществува"?

Досега съм направил уникален индекс на полето и минавам през всички данни, глупаво опитвайки се да добавя данни и да хвана изключение. Според мен не е най-бързият вариант :)

изберете count(*) от таблица където поле1="моята стойност"

UnDISCovery (27.09.04 17:23)

Ако изключението не се случва твърде често, тогава това е най-бързият вариант. Ако, напротив, новите данни са много редки, тогава трябва да направите „глупаво“ актуализиране, след това да анализирате броя на променените записи и, ако е необходимо, да добавите нов ред.

Изключение се случва много често :) Можете ли да разясните по-подробно опцията за "глупавата" актуализация? Алгоритъмът е критичен във времето, трябва да се изпълни възможно най-бързо. какъв е вашият съвет

query2.sql.text := "вмъкване в mytable(id, value) values(:id, value)"; . query1.sql.text := "update mytable set value = :value where >query1.prepare; while . do begin query2.params[1].asinteger := myid; query2.params[0].asfloat := myvalue; query1.execsql; if query1.row saffected = 0 тогава бе gin query2.params[0].asinteger := myid; query2.params[1].asfloat := myvalue; query2.execsql; end end

query2.sql.text := "вмъкване в mytable(id, value) values(:id, :value)"; . query1.sql.text := "update mytable set value = :value where >query1.prepare; while . do begin query1.params[1].asinteger := myid; query1.params[0].asfloat := myvalue; query1.execsql; if query1.row saffected = 0 тогава бе gin query2.params[0].asinteger := myid; query2.params[1].asfloat := myvalue; query2.execsql; end end

2[3] UnDISCOVEry (27.09.0417:35) >Изключение се случва много често :) Защо?

Тъй като има много по-малко нови данни и когато се опитате да вмъкнете стари (вече добавени), се получава изключване. ситуация поради уникалността на индекса в базата данни

Откъде идват новите? Ако също и от базата данни, свържете двете таблици и получете списък само с нови записи

Ново от текстов файл, за съжаление :(

> Нови от текстов файл, за съжаление :( форматиран? Вие сам как го разпознавате?

И за съжаление неформатиран, аз самият разпознавам и какво трябва да въведа в базата данни

. (жена с лесна добродетел). какъв е навикът да задаваш въпроси / да отговаряш на първоначалните данни, които изглежда подсказват поне тайните на родината?

колко неформатиран?КАКсе разпознавате? Можете ли да дадете пример или имате нужда от решение? Нали за това е форума, да обсъждаме, а не да чакаме готово решение (от къде ще дойде без обсъждания? За готово вече всичко е казано) начин на достъп? "уникален индекс" (стойност) откъде го взимаш? как въвеждате данните? . като цяло не бъдете скромни, опишете задачата.