E
Elfik
Работаю с моделью Briefcase. Есть база данных Access (включает 3 таблицы), которая через ADO подключается к моей програме и посредством запросов 'SELECT *...' сохраняется локально в ADODataSet'ах (по одному на каждую таблицу), которые затем полностью отключаются от физической базы и работают локально:
ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+TestBaseName+';Persist Security Info=False';
ADOConnection.Connected:=true;
DS.Connection:=ADOConnection;
DS.CommandText:=SQLText;
DS.Open;
DS.Connection:=nil;
ADOConnection.Connected:=false;
Так вот - в одной из таблиц есть индекс - автоинкрементное поле. Когда я питаюсь вставить какое-то новое значение:
DS.Append;
DS.FieldValues['SectionName']:=sName;
DS.Post;
потом сделать:
if DS.Locate('SectionName',SectionListBox.Items[SectionListBox.ItemIndex],[]) then
s:=DS.FieldByName('SectionID').AsString;
где SectionID и есть, собственно, автоинкрементное поле, то на последнем участке видно, что индекс не определён (s=''):blink(
Вопрос: Что сделать, чтобы индекс автоматически автоинкрементно увличивался при добавлении новой записи?
P.S. Нашёл свойство AutoGenerateValue, но так и не разобрался как его использовать.
ADOConnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+TestBaseName+';Persist Security Info=False';
ADOConnection.Connected:=true;
DS.Connection:=ADOConnection;
DS.CommandText:=SQLText;
DS.Open;
DS.Connection:=nil;
ADOConnection.Connected:=false;
Так вот - в одной из таблиц есть индекс - автоинкрементное поле. Когда я питаюсь вставить какое-то новое значение:
DS.Append;
DS.FieldValues['SectionName']:=sName;
DS.Post;
потом сделать:
if DS.Locate('SectionName',SectionListBox.Items[SectionListBox.ItemIndex],[]) then
s:=DS.FieldByName('SectionID').AsString;
где SectionID и есть, собственно, автоинкрементное поле, то на последнем участке видно, что индекс не определён (s=''):blink(
Вопрос: Что сделать, чтобы индекс автоматически автоинкрементно увличивался при добавлении новой записи?
P.S. Нашёл свойство AutoGenerateValue, но так и не разобрался как его использовать.