Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.07.26;
Скачать: [xml.tar.bz2];

Вниз

Запрос на выборку заданий для студентов по варианту   Найти похожие ветки 

 
ВладиславМинск   (2009-05-25 17:44) [0]

Уважаемые друзья, проблема в следующем..
Суть программы такова..
Имеется БД в Access которая содержит заданий по контрольным работам для учащихсмя заочного отделения.
в бд входит одна таблица с полями - Название_предмета; Номер семестра; Номер_варианта; Задание.
Учащийся открывает программу вводит номер семестра, свой личный номер (состоящий из 6 цифр) две последние цифры указывают на его номер в журнале и соответственно на его вариант. Далее он нажимает на кнопку Вывести лист заданий и формируется файл содержайщий все задания всех предметов именно его варианта.

База Аксес подключенная с помощью АДО.

Подскажите пожалуйста, как составить запрос чтобы выдавало именно задания того варианта и того семестра который указал учащийся?? И чтобы вывод осуществился в файл вордовский например.. ну или Хотя бы в Мемо..
Буду очень очень благодарен!


 
Нат ©   (2009-05-25 19:56) [1]

Погодите... А зачем ему вводить все 6 цифр?
Вы первый раз запрос составляете?
Почитайте хотя бы справку в Акцессе, она на русском
Иначе не поймете, что Вам ответят


 
Виталий Панасенко(дом)   (2009-05-25 20:47) [2]

"сотка" :-)


 
Сергей М. ©   (2009-05-26 08:24) [3]


> ВладиславМинск   (25.05.09 17:44)  


> как составить запрос


Куда уж проще:

select [Название_предмета],[Задание]
from [Таблица]
where [Семестр]=такой_то_семестр and [Номер_варианта]=такой_то_вариант


 
ЮЮ ©   (2009-05-26 12:01) [4]


> в бд входит одна таблица с полями - Название_предмета; Номер
> семестра; Номер_варианта; Задание.


Ну и нафига такая БД и такое приложение? Да ещё при таком уровне разработчика?

В паке Название_предмета должны лежать папки 1 семестр,.., m семестр , а в них Word-овские документы Вариант1, ..., ВариантN


 
ВладиславМинск   (2009-05-28 15:18) [5]


> Куда уж проще:
>
> select [Название_предмета],[Задание]
> from [Таблица]
> where [Семестр]=такой_то_семестр and [Номер_варианта]=такой_то_вариант


Сделал в ADOQuery именно так.. но в DBGrid выводит  только название полей а саму информацию не выводит.. что я делаю не так, подскажите пожалуйста..

Нзвание_предмета в базе - текстовое
Задание - поле Мемо

Искал в справке Аксеса нечто подобное, но чтото ничего нового не нашел..

П.С.
Извините-уж что я такой нуб и такие "тупые" вопросы задаю.. но помогите пожалуйста..


 
Сергей М. ©   (2009-05-28 15:25) [6]


> Сделал в ADOQuery именно так


"именно так" - это как ?


> Нзвание_предмета в базе - текстовое
> Задание - поле Мемо


А остальные поля ? Догадаться с трёх раз предлагаешь об их типе ?)


 
ВладиславМинск   (2009-05-28 15:30) [7]


> "именно так" - это как ?

SELECT name_pred, zadanie FROM zaokr where nom_sem=a and nom_var=b

где а, и b - введенные юзером значение в Edit"ы


> А остальные поля ? Догадаться с трёх раз предлагаешь об
> их типе ?)


name_pred - текстовы
nom_var - числовой
nom_sem - числовой
zadanie - Memo


 
Сергей М. ©   (2009-05-28 15:46) [8]


> вводит номер семестра


Т.е., к примеру, a=1


> вводит .. свой личный номер (состоящий из 6 цифр) две последние цифры
> указывают на его номер в журнале и соответственно на его
> вариант


Т.е. с учетом

> b - введенные юзером значение в Edit


твой запрос выглядит так

SELECT name_pred, zadanie FROM zaokr where nom_sem=1 and nom_var=123456

А в таблице нет ни единой записи, у которой в поле nom_var имеется значение 123456, потому что номер варианта не превышает 99, ибо


> две последние цифры указывают на .. вариант


 
ВладиславМинск   (2009-05-28 15:52) [9]


> свой личный номер (состоящий из 6 цифр) две последние цифры


Прошу прощения..  Забыл уточнить, что условие немного поменял.. требуется ввести только номер варианта, а не номер студента..


 
Сергей М. ©   (2009-05-28 15:58) [10]

Ну значит нет в таблице записей, в которых nom_sem=1 и nom_var=56


 
ВладиславМинск   (2009-05-28 16:04) [11]


> Ну значит нет в таблице записей, в которых nom_sem=1 и nom_var=56


Самое досадное, что есть.. =((

Сергей М. , можно ли с Вами как-нибудь связаться по-другому? Ну ICQ например или как-нибудь еще?..  Очень нужна помощь именно сегодня..


 
Сергей М. ©   (2009-05-28 16:18) [12]

Чем здесь-то не нравится ?

Приведи фрагмент кода, формирующего запрос и запускающего его на выполнение ..


 
ВладиславМинск   (2009-05-28 16:36) [13]

Ну все выглядит примерно так..


procedure Tfstud.Button1Click(Sender: TObject);
var a,b:string;

begin
a:=sEdit1.Text;
b:=sEdit2.Text;
ADOQuery1.Active:=True;
end;


вот.. а в ADOQuery самом

SELECT name_pred, zadanie FROM zaokr where nom_sem=a and nom_var=b


 
Сергей М. ©   (2009-05-28 16:44) [14]


> SELECT name_pred, zadanie FROM zaokr where nom_sem=a and
> nom_var=b


Этот запрос не может быть выполнен вообще, потому что поля nom_sem и nom_var у тебя числовые, а символы a и b не являются текстовым представлением числовых значений.

При такой ситуации попытка выполнения строки
ADOQuery1.Active:=True;
обязана привести к искл.ситуации и до наблюдения за гридом дело вообще не дойдет.

Так что давай уже не "примерно так", а "конкретно вот так") ..


 
ВладиславМинск   (2009-05-28 16:47) [15]

Да.. хорошенько я облажался =)

Каков выход из ситуации? )


 
Ega23 ©   (2009-05-28 16:51) [16]


> Каков выход из ситуации? )


ALTER TABLE + F1


 
Плохиш ©   (2009-05-28 16:52) [17]


> Каков выход из ситуации?

Букварь-какой почитать...


 
Сергей М. ©   (2009-05-28 16:52) [18]

Очевиден же:
..
a:=sEdit1.Text;
b:=sEdit2.Text;
ADOQuery1.Lines.Text :=" .......... WHERE nom_sem=" + StrToInt(a) + " AND nom_var=" + StrToInt(b)
..


 
Плохиш ©   (2009-05-28 16:53) [19]


> Сергей М. ©   (28.05.09 16:52) [18]


> ADOQuery1.Lines.Text :=" .......... WHERE nom_sem=" + StrToInt(a)
> + " AND nom_var=" + StrToInt(b)
>

Зачем над младенцем издеваешься?


 
Сергей М. ©   (2009-05-28 16:54) [20]


> хорошенько я облажался


Не то слово)

Можно сказать - откровенно пытался ввести местную общественность в заблуждение)


 
Сергей М. ©   (2009-05-28 16:55) [21]


> Плохиш ©   (28.05.09 16:53) [19]


Это я-то издеваюсь ?)
Ты посмотри на [16])


 
Сергей М. ©   (2009-05-28 16:56) [22]


> Плохиш ©   (28.05.09 16:53) [19]


Тьфу)

И вправду ведь издеваюсь)

IntToStr, разумеется)


 
Сергей М. ©   (2009-05-28 16:57) [23]

И опять ахинея))
Вот меня понесло-то)
ADOQuery1.Lines.Text :=" .......... WHERE nom_sem=" + a + " AND nom_var=" + b


 
Плохиш ©   (2009-05-28 16:58) [24]


> Сергей М. ©   (28.05.09 16:56) [22]

Ты его добить решил, да? :-))
У тебя ж a и b текстовые :o)


 
Плохиш ©   (2009-05-28 16:59) [25]


> Сергей М. ©   (28.05.09 16:57) [23]
>
> И опять ахинея))
> Вот меня понесло-то)

Хм, и когда она, тяпница, начинается? :o)


 
Сергей М. ©   (2009-05-28 17:00) [26]


> Плохиш ©   (28.05.09 16:58) [24]


Ну да).. Контрольный в голову)


 
Сергей М. ©   (2009-05-28 17:04) [27]


> Плохиш ©   (28.05.09 16:59) [25]


Ну когда ? В четверг после обеда, само собой)


 
Сергей М. ©   (2009-05-28 17:14) [28]


> Плохиш ©   (28.05.09 16:59) [25]


Ну когда ? В четверг после обеда, само собой)


 
ВладиславМинск   (2009-05-28 17:28) [29]

SELECT name_pred, zadanie FROM zaokr WHERE nom_sem="+a+" AND nom_var="+b+"


что я опять не так делаю? =((


 
Сергей М. ©   (2009-05-28 17:29) [30]

Лишний плюс убери с конца)


 
ВладиславМинск   (2009-05-28 17:35) [31]

SELECT name_pred, zadanie FROM zaokr WHERE nom_sem="+a+" AND nom_var="+b"


тот же результат.. выводит одну строчку где в поле name_predm пусто а в поле zadanie пишет (Memo)

как я наверное уже вас достал..


 
Dennis I. Komarov ©   (2009-05-28 17:38) [32]

"SELECT name_pred, zadanie FROM zaokr WHERE nom_sem="+a+" AND om_var="+b


 
ВладиславМинск   (2009-05-28 17:42) [33]

"SELECT name_pred, zadanie FROM zaokr WHERE nom_sem="+a+" AND om_var="+b

пишет ошибочная инструкция SQL..


 
ВладиславМинск   (2009-05-28 17:45) [34]

люди.. помогите с нписанием этой чертовой проги..
а то я сча с ума сойду и вас заодно всех сведу.. =((
ну мне просто ппц как надо...  попробуйте мот у себя там че-нить навоять и скинуть код.. или как-нить так а то это жесть какая-то творится..


 
Dennis I. Komarov ©   (2009-05-28 17:52) [35]

1. "SELECT name_pred, zadanie FROM zaokr
2. "SELECT name_pred, zadanie FROM zaokr WHERE nom_sem="+a

Результаты этих запросов...


 
ВладиславМинск   (2009-05-28 18:01) [36]


> 1. "SELECT name_pred, zadanie FROM zaokr


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


> 2. "SELECT name_pred, zadanie FROM zaokr WHERE nom_sem="+a


а вот здесь пишет Несоответствие типов данных


 
ВладиславМинск   (2009-05-28 18:49) [37]

мда.. чуется турнут меня нафиг.. =((  нифига не получается =((


 
sniknik ©   (2009-05-28 18:53) [38]

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


 
ВладиславМинск   (2009-05-28 19:04) [39]


> за то что не получается нет. а вот за партизанщину... вполне
> может быть. как только надоешь.


эмм.. про партизанщину не совсем понял..

Мот помог бы лучше?


 
sniknik ©   (2009-05-28 19:27) [40]

я не помогаю тем кто не состоянии нормально описать свои проблемы, и правдиво скопировать код от этих проблем в форум.



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.07.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.007 c
4-1213170511
Игорь Х
2008-06-11 11:48
2009.07.26
Как получить информацию о памяти запущенного процесса?


15-1243370399
Petr V. Abramov
2009-05-27 00:39
2009.07.26
Насчет конференции («Начинающим»)


2-1244032588
Pavlov
2009-06-03 16:36
2009.07.26
try except


2-1243260477
Ega23
2009-05-25 18:07
2009.07.26
DevExpress TcxGrid - как добраться до НД при MultiSelet?


15-1243283277
dis12345
2009-05-26 00:27
2009.07.26
Установка delphi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский