Помогите разобраться с БД

kiskus
5/24/2007, 3:38:57 PM
Запрос можно оформить процедурой и передавать значения едитов
madfallos
6/6/2007, 3:20:50 PM
очередной вопрос :)
как записать несколько полей из Query1 в поле Memo отдельно взятой таблицы, так чтобы после некоторых полей осуществлялся перевод на новую строку....

я сделал без перевода на след строку:
datamodule2.svodka.FieldByName('osnova').AsString:=query1Adres.AsString+' '+query1Dom.AsString+' '+query1Kvartira.AsString+' '+query1Facticheski.AsString;

а нужно:
datamodule2.svodka.FieldByName('osnova').AsString:=query1Adres.AsString+' '+query1Dom.AsString+' '+query1Kvartira.AsString+'вот тут перевод'+query1Facticheski.AsString;

как это сделать??? и вообще правильно ли я обращаюсь к полю мемо (как к строке)?
shurakrkn
6/8/2007, 5:17:43 PM
(madfallos @ 06.06.2007 - время: 11:20) а нужно:
datamodule2.svodka.FieldByName('osnova').AsString:=query1Adres.AsString+' '+query1Dom.AsString+' '+query1Kvartira.AsString+'вот тут перевод'+query1Facticheski.AsString;

как это сделать??? и вообще правильно ли я обращаюсь к полю мемо (как к строке)?
не знаю, как в дельфи, а в билдере стандартный символ перевода строки добавляется '\n', может также и в дельфях работает.
maxdiversexnarod1
6/8/2007, 6:05:35 PM
madfallos
shurakrkn
Я не совсем понял вопрос, но если нужно сделать перевод строки, то в Delphi используется последовательность #13#10 (коды перевода строки).
Например так:
'a'#13#10'b'
Прошу обратить внимание на то, что коды записаны вне кавычек.

Насчёт \n - никогда не слышал, чтобы в Delphi это работало. У меня Delphi 7.0 - там не работает. Хотя, возможно, я отстал от жизни wink.gif В последних версиях Delphi передирают из C++ всё подряд, возможно, что и это тоже появилось.
kiskus
6/13/2007, 1:11:15 PM
datamodule2.svodka.FieldByName('osnova').AsString:=query1Adres.AsString+' '+query1Dom.AsString+' '+query1Kvartira.AsString+ #13+query1Facticheski.AsString;

Или
var stroka:string;

stroka:=query1Adres.AsString+' '+query1Dom.AsString+' '+query1Kvartira.AsString+ #13+query1Facticheski.AsString;

datamodule2.svodka.FieldByName('osnova').AsString:=stroka;
madfallos
6/20/2007, 8:08:32 PM
и снова проблема:
в одном из модулей нужно посчитать кол-во записей в таблице
перевожу таблицу на первую запись
пишу цикл от 1 до рекордкаунт
в нем инкриментирую переменную
но почему то именно с этой таблицей глюк, пишет, что кол-во записей 1 (даже вывел рекордкаунт на экран, пишет 1), хотя в реале 4
че за дела?????
kiskus
6/21/2007, 1:04:41 PM
количество записей в таблице это и есть RecordCount;

var
kol_zap:integer;

kol_zap:=table1.RecordCount;

или sql запросом

Query1.close;
Query1.sql.clear;
Query1.sql.add('select count(*)kz from 'Имя таблицы' ');
Query1.open

kolzap:=Query1.FieldValues;

или через цикл (Китайский способ ИМХО)

kol_zap:=0;

table1.first; <-Поставить таблицу на первую запись

while not table1.eof do begin
inc(kol_zap);
table1.next;
end;
madfallos
6/21/2007, 7:59:31 PM
про то, что рекорд каунт это кол-во записей я знаю :)
у меня переменная инкрементируется только по условию...забыл сказать :)
madfallos
6/22/2007, 11:40:36 PM
У меня снова проблема: при создании дистрибутива программой InstallShield Express Borland Limited Edition на последнем шаге тестируя инсталляху, а точнее уже при копировании файлов на диск выдает такие 2 ошибки:

Internal Error 25001.1615:
Registration Costing:: CostAllISSelfRegEntries::MsiDatabaseOpenView(hDatabase, _T(Select * from ISSelfReg”),hView)

Internal Error 25001. 6
Registration Costing:: CostAllISSelfRegEntries::MsiViewExecute(hView,NULL)

самое интересное, что прога устанавливается нормально после нажатия ОК на окнах с этими ошибками….

И еще подвопрос:
я не в курсе, надо мне дополнительно устанавливать BDEAdmin на комп, в который инсталлирую прогу. Так как на 2м этапе в пункте Objects/MergeModules стоят галочки на BaseRTL, BDE_ENT, DatabaseRTL
madfallos
6/24/2007, 1:28:44 PM
вопросик такой: что за файл .TV в папке с базами данных и с чем его едят????
kiskus
6/25/2007, 1:32:02 PM

Вот программа создания инсталляционных пакетов - Wise Installation System,
BDE и алиасы можно установить в выходной файл. Работает без проблем.

BDE Admin -приложение для конфигурации драйвера BDE. Если BDE уже стоит,то и устанавливать не нужно.

.TV - временный файл создаваемый DBD32. Не заморачивайся.
do-do
6/25/2007, 11:47:48 PM
Попросили покопаться в самопальной базе данных. Написана неизвестно на чем. Расширение файлов VAD (вроде так по телефону услыхал)
Может кто знает, чье это расширение - иль нечто самобытное ?
Возможно, базы могут содержать звуковые фрагменты.....но это вопрос
alexfarm
11/26/2009, 10:07:04 AM
Пример программы для работы с базой данных из книги Бобровского С. на странице 340 действительно не работает. Выдается ошибка при приведении к типу тблобфиелд. Решение такое: Я добавил на форму 5 таблицу и запустил программу. И всё заработало. Потом эту таблицу удалил. Всё по прежнему работает. Видимо с добавлением таблицы автоматически к модулю 5 подключились дополнительные модули, которые уже позволили работать с блоб-полями.