С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 08.09.2009
Сообщений: 3
1

Pascal и Pervasive

08.09.2009, 21:42. Показов 871. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Установвил вот BP7 и Pervasive. Вроде что то получилось..
Не сочтите за наглость, так вот сразу.. Но если можно в помощь.. Как на Паскале создать Базу (видимо файл dbf), как ее потом считывать хотя бы на экран. Помогите либо добрым советом, либо примером (что гораздо понятнее)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.09.2009, 21:42
Ответы с готовыми решениями:

Переход от btrieve к Pervasive
Помогите кто может информацией, может я и пригожусь когда. Имеются файлы БД btrive 6.00 и чуть...

Как работать с Pervasive?
как работать в Pervasive SQL с макросами? Запросы из БД и всё такое... Добавлено через 12 часов...

Помощь по работе с Pervasive.SQL V8
добрый день! появилась необходимость работать с БД Pervasive.SQL V8 из скриптов на php. к...

Pervasive: Ошибка при записи файлов в таблицу БД
И так. Решил проблему с записью любых файлов в БД: byte bytes = File.ReadAllBytes(way); string...

7
Программист 1С
859 / 647 / 187
Регистрация: 03.03.2009
Сообщений: 1,154
08.09.2009, 21:54 2
Вот пример...базы данных в паскале оформляются примерно так!
{После компиляции в программе установлен "пароль" первый 222 и второй 444222}
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
Program BaseData;
uses crt;
label 12;
type
qwerty = record
Name :string;
fam :string;
tel :string;
id :string;
spec :string;
end;
const namebase = 'base.db';
var
fil :file of qwerty;
qwer :qwerty;
otv :char;
poisk:string;
poi :integer;
col :integer;
i,y :integer;
procedure menu;
begin
assign(fil,namebase);
if FileExists(NAMEBASE) then reset(fil)
else rewrite(fil);
writeln('__________________________________________________________');
writeln(' 1. Добавить запись');
writeln(' 2. Обзор всех записей');
writeln(' 3. Быстрый поиск');
writeln(' 4. Расширеный поиск');
writeln(' 5. Удалить запись');
writeln(' 6. Изенить заись');
writeln(' 7. Выход');
write('Выбор: ');readln(otv);
end;
procedure menu_search;
begin
writeln('__________________________________________________________');
writeln(' 1. по имени');
writeln(' 2. по фамилии');
writeln(' 3. по телефону');
writeln(' 4. по профессии');
write('Выбор: ');
readln(poi);
case poi of
1: begin
seek(fil,0);
writeln('поиск о имени');
readln(poisk);
col:=0;
writeln;
while not(eof(fil)) do
begin
read(fil,qwer);
if qwer.name = poisk then
begin
inc(col);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
end;
end;
writeln;
writeln(' кол-во записей = ',col);
end;
2: begin
seek(fil,0);
writeln('Поиск по фамилии');
readln(poisk);
col:=0;
writeln;
while not(eof(fil)) do
begin
read(fil,qwer);
if qwer.fam = poisk then
begin
inc(col);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
 
end;
end;
writeln;
writeln(' кол-во записей = ',col);
end;
3: begin
seek(fil,0);
writeln('Поиск по номеру телефона');
readln(poisk);
col:=0;
writeln;
while not(eof(fil)) do
begin
read(fil,qwer);
if qwer.tel = poisk then
begin
inc(col);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
 
end;
end;
writeln;
writeln(' кол-во записей = ',col);
end;
4: begin
seek(fil,0);
writeln('Поиск по профессии');
readln(poisk);
col:=0;
writeln;
while not(eof(fil)) do
begin
read(fil,qwer);
if qwer.spec = poisk then
begin
inc(col);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
 
end;
end;
writeln;
writeln(' кол-во записей = ',col);
end;
5: begin
seek(fil,0);
writeln('Поиск по id номеру');
readln(poisk);
col:=0;
writeln;
while not(eof(fil)) do
begin
read(fil,qwer);
if qwer.id = poisk then
begin
inc(col);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
 
end;
end;
writeln;
writeln(' кол-во записей = ',col);
end;
end;
end;
procedure files_add;
begin
seek(fil,filesize(fil));
with qwer do
begin
writeln('*****************************************************');
writeln('Введите данные новой записи:');
write('имя ');
readln(name);
write('фамилия ');
readln(fam);
write('телефон ');
readln(tel);
writeln('професия');
readln(spec);
writeln('id номер');
readln(id);
writeln('*****************************************************');
end;
write(fil,qwer);
end;
procedure files_read;
 
begin
seek(fil,0);
col:=0;
writeln;
writeln(' чтение записи из файла ');
while not(eof(fil)) do
begin
inc(col);
read(fil,qwer);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
 
end;
writeln;
writeln(' кол-во записей = ',col);
end;
procedure search;
begin
seek(fil,0);
writeln('Поиск по имени');
readln(poisk);
col:=0;
writeln;
while not(eof(fil)) do
begin
read(fil,qwer);
if qwer.name = poisk then
begin
inc(col);
writeln(col,'. Имя: ',qwer.name,' Фамилия: ',qwer.fam,' Телефон: ',qwer.tel,' Професия: ',qwer.spec,' id номер: ',qwer.id);
 
end;
end;
writeln;
writeln(' кол-во записей = ',col);
end;
 
Procedure del_record;
var NumRec:integer;
IOresult: integer;
begin
Assign(fil,namebase);
{$I-}
reset(fil);
{$I }
If IOresult=1 then
begin
writeln('Такого файла данных не существует');
end
else
writeln('Введите номер удаляемой записи');
Read(NumRec);
begin
if NumRec  >FileSize(fil) then
begin
writeln('Такой записи не существует');
end
else
begin
Seek(fil,FileSize(fil)-1);
read(fil,qwer);
Seek(Fil,NumRec-1);
write(fil,qwer);
Seek(fil,FileSize(fil)-1);
truncate(fil);
Writeln('Запись стерта');
writeln('Файл данных имеет ',FileSize(fil),' записей');
close(fil);
end;
end;
 
end;
 
Procedure Edit_fil;
var
fil :file of qwerty;
qwer :qwerty;
who :string;
found: boolean;
IOresult:integer;
begin
write('Введите фамилию которую вы хотите изменить ');
readln(who);
if who = 'quit' then halt
else
assign(fil,namebase);
{$I-}
reset(Fil);
{$I }
found:=false;
if IOresult=0 then
with qwer do
while Not EOF(Fil) do
begin
read(Fil,qwer);
if fam = who then { нашли такого/ую }
begin
write('Заменить на фамилию: ');
readln(fam);
found:=true;
seek(Fil,FilePos(Fil)-1); { вернуться на 1 позицию обратно, т.е. на позицию того, что надо заменять }
write(fil,qwer);
break; { убрать это, если известно, что таких несколько }
end;
end;
close(fil);
if Not Found
then writeln(Who,' не найден. Ха-ха')
else writeln(Who,' найден и заменен.');
readln;
end;
 
begin
writeln;
writeln(' ***************************************************************');
Writeln(' ******************* База данных КИТБ группа КПО-08 *****************');
writeln(' ***************************************************************');
 
writeln;
 
 
12: menu;
clrscr;
case otv of
'1':files_add;
'2':files_read;
'3':search;
'4':menu_search;
'5':del_record;
'6':Edit_fil;
'7':halt;
end;
goto 12;
close(fil);
end.
1
Босс
161 / 126 / 10
Регистрация: 03.06.2009
Сообщений: 750
08.09.2009, 22:04 3
Так это же ведь просто файл записей!!!
т.е. в паскале баз данных как таковых нет?
0
Программист 1С
859 / 647 / 187
Регистрация: 03.03.2009
Сообщений: 1,154
08.09.2009, 22:04 4
На счет конкретно вашего вопроса могу выдать следующее:

Dbf1Plus. Модуль работы с DBF

Описание: Объектно-ориентированный модуль для чтения/записи DBF-файлов. В качестве примера приводится конвертор из DBF в простой текст.

Категория: Pascal-Базы данных
Скачать по ссылке http://ishodniki.ru/list/info.... =pascal-db
0
Почетный модератор
64305 / 47602 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
08.09.2009, 22:18 5
т.е. в паскале баз данных как таковых нет?
В стандартном Паскале БД строятся только на основе типизированных файлов.
0
0 / 0 / 0
Регистрация: 08.09.2009
Сообщений: 3
08.09.2009, 22:22  [ТС] 6
так а программно этот файл в Pervasive создать можно?
типа структура: имя фамилия id.. и заполнить его программно... штук несколько записей ..
0
28 / 25 / 1
Регистрация: 28.07.2009
Сообщений: 109
09.09.2009, 09:08 7
У кого из нас стоит Pervasive?

Исходники от неё есть или хотя бы интерфейсная часть? Вот по ней и смотреть, что можно, а что -- нельзя.
0
0 / 0 / 0
Регистрация: 08.09.2009
Сообщений: 3
09.09.2009, 23:04  [ТС] 8
не понял вас dim-hj
0
09.09.2009, 23:04
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.09.2009, 23:04
Помогаю со студенческими работами здесь

Turbo Pascal, Pascal ABC, Free Pascal, PascalABC.NET - в чем разница?
Всем привет, решил изучать Паскаль, но на форуме увидел 4 его версии - Turbo Pascal, Pascal ABC,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru