Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2009, 15:49   #1
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию Создать DBF

Код:
 with tbl1.Create(nil) do
 begin
  tbl1.DatabaseName:=(ExtractFilePath(Application.ExeName)+'out\');
  tbl1.TableName:='1.dbf';
  tbl1.TableType:=ttDBase;
  with tbl1.FieldDefs do
  begin
    Add('OGRN', ftString,15,False);
  end;
  tbl1.CreateTable;
   end;
Создаю с помощью BDE компонента table
код работает...но после создания я не могу открыть этот файл..пишет не правильная структура (не dbf редактор ни тот же Excel его не открывают )... пробовал создавать без полей.. одна фигня...
Может кто подскажет как создать через ADO или ещё как?
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 19.10.2009, 13:23   #2
М_Виктор
Пользователь
 
Регистрация: 18.09.2009
Сообщений: 49
По умолчанию

Цитата:
Сообщение от BARNEY Посмотреть сообщение
Код:
 with tbl1.Create(nil) do
 begin
  tbl1.DatabaseName:=(ExtractFilePath(Application.ExeName)+'out\');
  tbl1.TableName:='1.dbf';
  tbl1.TableType:=ttDBase;
  with tbl1.FieldDefs do
      begin
         Add('OGRN', ftString,15,False);
      end;
  tbl1.CreateTable;
   end;
Создаю с помощью BDE компонента table
код работает...но после создания я не могу открыть этот файл..пишет не правильная структура (не dbf редактор ни тот же Excel его не открывают )... пробовал создавать без полей.. одна фигня...
Может кто подскажет как создать через ADO или ещё как?
может быть так:

with tbl1 do
begin
Active:=False;
tbl1.DatabaseName:=(ExtractFilePath (Application.ExeName)+'out\');
tbl1.TableName:='1.dbf';
tbl1.TableType:=ttDBase;
with tbl1.FieldDefs do
begin
Clear;
Add('OGRN', ftString,15,False);
end;
tbl1.CreateTable;
end;
tbl1.Active:=True;
М_Виктор вне форума Ответить с цитированием
Старый 19.10.2009, 14:17   #3
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

сделал через ADO
Код:
ADOcon1.DefaultDatabase:=(ExtractFilePath(Application.ExeName)+'out\');
  ADOcon1.Connected:=True;
  qry1.SQL.Text:='CREATE TABLE BASE '
 +'(OGRN string(15))';
 qry1.ExecSQL;
Не кто не подскажет как создать
поле number(11,2)

сразу
Код:
qry1.SQL.Text:='CREATE TABLE BASE '
 +'(OGRN number(11,2))';
не пашит как и DECIMAL(11,2) и numeric(11,2)
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)

Последний раз редактировалось Stilet; 23.10.2009 в 11:44.
BARNEY вне форума Ответить с цитированием
Старый 23.10.2009, 13:52   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а через какай провайдер работаете с DBF?
приведите полностью содержимое свойства
ADOcon1..ConnectionString = ?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 23.10.2009, 13:55   #5
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Код:
Provider=MSDASQL.1;Persist Security Info=False;Data Source=Файлы dBASE
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 23.10.2009, 14:35   #6
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

ссылочка для общего развития - Таблицы dBASE: Структура .DBF-файла
soleil@mmc вне форума Ответить с цитированием
Старый 23.10.2009, 14:40   #7
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

soleil@mmc
Да в курсе.... по этому и создал тему
http://programmersforum.ru/showthread.php?t=67081

Но как отредактировать мну не сказали...
А создать через компоненты BDE не получается.... Короче сам себя загнал в тупик.

М_Виктор
тоже пишет не правильная структура при открытии
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)

Последний раз редактировалось BARNEY; 23.10.2009 в 14:45.
BARNEY вне форума Ответить с цитированием
Старый 23.10.2009, 15:31   #8
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

тебе Serge_Bliznykov уже давно предложил варианты решения проблемы

имхо, после просмотра обеих тем, у меня возникают сомнения в адекватности вопрошающего

1) для создания и работы дбф-ки с любым составом полей существует компонент TDbf
2) изменить структуру полей в уже существующей непустой дбф-ке анриал
отсюда встречный вопрос - что ты собрался менять и где?
soleil@mmc вне форума Ответить с цитированием
Старый 23.10.2009, 15:39   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

soleil@mmc спасибо. всё точно так.


Цитата:
Provider=MSDASQL.1;Persist Security Info=False;Data Source=Файлы dBASE
А у меня через Вашего провайдера вообще не получается создать DBF файл ;(

вот код:


а вот и ошибка:
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.10.2009, 09:29   #10
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Serge_Bliznykov
после out уберите "\"
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из TXT в DBF [Sano]Soprano Помощь студентам 2 28.04.2009 09:21
DBF =( NaQ БД в Delphi 13 15.02.2008 23:18
Кодировка Dbf Nikolaeva БД в Delphi 7 05.02.2008 13:24
сохранение результата выборки из DBF файла в DBF файл с такой же структурой таблицы GazimagomedovM БД в Delphi 5 06.11.2007 17:58
От Оракла к DBF lena_fokina БД в Delphi 1 02.05.2007 14:28