Показать сообщение отдельно
  #5  
Старый 19.03.2013, 22:30
cyborgg4655 cyborgg4655 вне форума
Начинающий
 
Регистрация: 16.03.2013
Сообщения: 151
Версия Delphi: Delphi 2010
Репутация: 10
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
Что справка говорит по поводу "CREATE TABLE IF NOT EXISTS", есть там такое?
Справку не смотрел. Решил этот вопрос по другому, более усложненным методом, и то с ним долго мучился))

Код:
var
i3: integer;
asd9:integer;
asd1:string;
begin
asd1:=ADOQuery2.FieldByName('Клиент').Text;
ADOConnection4.GetTableNames(ListBox1.Items, False);
for i3  :=0 to ListBox1.Items.Count-1 do
if ListBox1.Items.Strings[i3]=asd1 then
begin
exit;
end;
for i3  :=0 to ListBox1.Items.Count-1 do
if ListBox1.Items.Strings[i3]<>asd1 then
begin
asd9:=1;
end;
if asd9=1 then
begin
ADOQuery4.Close;
//ADOQuery4.SQL.Clear;
ADOQuery4.SQL.Text:= Format('CREATE TABLE %s (Код number, Наименование char(255), По_документу number, По_факту number, Расхождения number, Учед char(10), Дата date)', [asd1]);
ADOQuery4.ExecSQL;
ADOQuery4.SQL.Text:= Format('SELECT * from %s', [asd1]);
ADOQuery4.Open;
end;
end;
Долга была проблема, выдавал ошибку, говорил мол таблица ХХХХ уже создана.
Только этот кусок меня спас
Код:
for i3  :=0 to ListBox1.Items.Count-1 do
if ListBox1.Items.Strings[i3]=asd1 then
begin
exit;
Без него вроде как и цикл был правильный, но ошибка так и доканывала...
Ответить с цитированием