Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 04.02.2006, 20:58
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Лампочка Переход на запись в таблице

У меня проблема:
1. Я имею таблицу (Paradox), имеющая 5 записей (картежей).
2. Table и DataSet расположены в DataModule
3. При создании формы мне надо перейти скажем на 3 запись в таблице, я это реализую следующим способом:

Код:
procedure TForm1.FormCreate(Sender: TObject);
var
Rec: Integer;
begin
Rec := 3;
DM.Table1.First;
DM.Table1.MoveBy(Rec);
end;

Где Rec - номер необходимой мне записи, DM - DataModule. При компиляции он говорит: 'Access violation at address 004a0d7e in module 'Artic.exe'. Read of address 00000058'.
Объясните - где ошибка или дайте другой способ перехода на нужную мне запись в таблице.

Последний раз редактировалось Ross, 04.02.2006 в 22:09.
Ответить с цитированием
  #2  
Старый 05.02.2006, 11:22
Аватар для Майняк
Майняк Майняк вне форума
Начинающий
 
Регистрация: 03.02.2006
Адрес: Киров
Сообщения: 198
Репутация: 50
По умолчанию

table1.RecNo:=5;

Без фёрстов. Просто переход и всё.
Ответить с цитированием
  #3  
Старый 05.02.2006, 16:56
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Хорошо

Благодарю, я уже разобрался. Чё-то он так глючит, когда Table и DataSet находятся в DataModule. Я просто вынес их на форму и всё нормально заработало. А так, я так же перехожу на запись через RecNo. Ещё раз спасибо.
Ответить с цитированием
  #4  
Старый 06.02.2006, 02:23
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Восклицание

У меня БД - Paradox.
Я имею таблицу состающую из следующих Полей:
1. Razdel - Название предмета, раздела.
2. Vop - Содержание вопроса.
3. Otv-0 - Правильный ответ.
4. Otv-1 - Неправильный ответ.
5. Otv-2 - Неправильный ответ.
Я знаю, что в таблице 10 записей.
Я хочу занести в пременную содержимое 3 записи поля Otv-0.
Желательно не использовать SQL.
Ответить с цитированием
  #5  
Старый 06.02.2006, 10:51
Аватар для Майняк
Майняк Майняк вне форума
Начинающий
 
Регистрация: 03.02.2006
Адрес: Киров
Сообщения: 198
Репутация: 50
По умолчанию

мммм.... ну, что-то вроде
s:=Tabl1.FieldByname('Razdel').asString+....+Tabl1 .FieldByname('otv').asString
Ответить с цитированием
  #6  
Старый 06.02.2006, 14:43
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Хорошо

Чичас попробуем. Спасибо.
Ответить с цитированием
  #7  
Старый 07.02.2006, 04:04
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Хорошо

Ага, спасло. А то надо делать другу дипломку (старая погибла, без надежды на восстановление). Вот и в попыхах делаю всё заново (к конце февраля сдавать) - тестирующая система для института (сказали ему, что если сделает такую прогу, то ему зачтут дипломку). Что меня убило - делать такую прогу, при условии, что они не проходят ни одного языка программирования, он сам по своей собственной инициативе стал изучать VB, а я его заставляю пересесть на мне родной Delphi. Сам паралельно с Delphi изучаю C++ Borland (планирую набрать знания в С для Linux, т.к. огромное желание послать далеко Windows). Ещё раз - СПАСИБО.
Ответить с цитированием
  #8  
Старый 07.02.2006, 10:22
Аватар для Майняк
Майняк Майняк вне форума
Начинающий
 
Регистрация: 03.02.2006
Адрес: Киров
Сообщения: 198
Репутация: 50
По умолчанию

пжлст..
а посылать Вин не надо. Ибо это не выгодно. Подавляющее большинство пользователей работают именно с этой ОСью...
А если хочешь под Линух программить, то скорее всего надо учится писать дрова или садись за изучение сет. программирования.
Ответить с цитированием
  #9  
Старый 07.02.2006, 17:03
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Сообщение

Конечно, не надо посылать. Тогда бы я не стал бы так упорно сидеть в Delphi, а сидел бы, где-нибудь на Visual C или что-нибудь подобном.
Ответить с цитированием
  #10  
Старый 08.02.2006, 04:39
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
Злость

АААААААААа вот ещё вопрос:
У меня две таблицы. Одна подключена к БД, другая - нет.
БД состоит из следующих столбцов:
1. Razdel - здесь хранится название предмета (математика, история и т.д.)
2. Vop - здесь хранится вопрос
3. Otv-1 - здесь хранится правильный ответ
4. Otv-2 - здесь хранится не правильный ответ
5. Otv-3 - здесь хранится не правильный ответ
В Razdel n-ое кол-во записей (и математика и истоия и т.д.). Все картежи, которые в поле Razdel, имеют например атрибут Математика копировать во вторую таблицу. Вообщем - всё, что относится к разделу математика, копируется в другую таблицу. Как енто реализовать?
Ответить с цитированием
  #11  
Старый 08.02.2006, 05:44
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Самый простой метод, ИМХО, с помощью sql запроса, примерно вот так:
Код:
  INSERT INTO table2
      ( Razdel, Vop, [Otv-1], [Otv-2], [Otv-3] )
    SELECT Razdel, Vop, [Otv-1], [Otv-2], [Otv-3] FROM table1 
       WHERE Razdel='Математика'

тут table2 - маленькая таблица, table1 - большая
Ответить с цитированием
  #12  
Старый 10.02.2006, 01:27
Аватар для Ross
Ross Ross вне форума
Активный
 
Регистрация: 15.10.2005
Адрес: Казань
Сообщения: 250
Репутация: 30
По умолчанию

Благодарю, попробую. Спасибо.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:55.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter