|
|
Знаете ли Вы, что ... | |
...инструкция по установке аватара описана в Правилах форума. | |
<< Предыдущий совет - Случайный совет - Следующий совет >> |
Pascal, Delphi & Builder Вопросы программирования касающиеся Pascal и Delphi |
Ответить |
|
Опции темы | Опции просмотра |
15.04.2011 22:44 | #41 |
програмщег
Сообщений: 4,971
+ 2,743
5,086/2,116
– 69
99/68
|
IBExpert ни ишлатиш бўйича инструкция (ҳеч ким сўрамаган бўлсаям, бир мақтанволай дедимда ):
1) Register Database (чапдан биринчи) тугмасини босасиз 2) Қуйидаги ойна очилади 3) Серверни ва сервер версиясини танлайсиз. Агар сервер ишлаб ўтирган компьютерингизда бўлса Local ни танлайсиз. Сервернинг версияси компьютерингизга сервер сифатида нима ўрнатганингизга боғлиқ (Interbase ёки Firebird нинг версияларидан бири). 4) БД файли (.gdb кенгайтмали файл) қаердалигини кўрсатасиз (папкани расми бор кнопкани боссангиз OpenDialog очилади), алиас ёзасиз (алиас ёзиш аслида шарт эмас), логин ва парольни киритасиз (SYSDBA/masterkey). "Register" кнопасини босиб регистрация қиласиз. 5) Базани регистрация қилиб бўлдик. База чап томондаги базалар рўйхатида пайда бўлади. Базага уланиш учун унинг устига икки марта босамиз (сичқонча билан). 6) Базанинг ҳамма объектларининг рўйхати очилади. Бизда иккита таблица (LESSONS - мавзулар, WORDS - сўзлар), иккита триггер (таблицага маълумот қўшганда ID полясига автоинкримент қўшиш учун) ва иккита генератор (автоинкриментлар учун) бор. Керакли таблицани танлаб икки марта боссангиз ўнг томонда таблица очилади. 7) Data таби(расмда қизил билан ўралган)га ўтсангиз таблицадаги маълумотларни кўришингиз, таҳрири қилишингиз ва ўчиришингиз мумкин. Маълумотларни ўзгартиргандан кейин Commit қилиш эсдан чиқмасин (кўк ранг билан ўралган жойдаги қизил "галочка"). Агар нотўғри таҳрир қилган бўлсангиз Rollback қилишингиз мумкин (кўк ранг билан ўралган жойдаги қора "крест").
__________________
Ошибки прошлого, мудрость будущего. (с)Д.Тернер. Последний раз редактировалось OmoN; 15.04.2011 в 22:47. |
|
Ответить |
22.04.2011 18:52 | #48 |
MAKTAB
O`QITUVCHI
Сообщений: 682
+ 617
543/277
– 8
129/41
|
Aytishga uyalib o`tirgandim, yaxshi o`zingiz gap ochib qoldingiz, Siz bergan dastur yaxshimas zo`r ishlayapti, ammo men uni o`zimning talabim bo`yicha o`zgartiraman desam, hech narsa qilolmadim, masalan Siz raqamlar bilan belgilagan joyda men so`z yozishim kerak edi, yana, delphidan BDga murojaatni tushunolmadim, ya`ni mustaqil o`zim o`zgartirish kiritolmadim. Umuman dastur juda yaxshi, menikiga o`xshab yuklanayotganida kerak-kerakmas narsalarni miyasiga yuklab komp hotirasini "axlat" bilan to`ldirmaydi. Agar charchamagan bo`lsangiz BDning o`zida qanday qilib o`zgartirishlar kiritishni va unga Delphidan turib qanday murojaat qilishni shu yerda muhokama qilsak.
|
|
Ответить |
22.04.2011 19:58 | #49 | |||
програмщег
Сообщений: 4,971
+ 2,743
5,086/2,116
– 69
99/68
|
Ёзганларингизнинг ярмига тушунмадим десам алдамаган бўламан
Цитата:
Қайси рақамни ўрнига сўз ёзмоқчисиз? Агар синф номларини "Биринчи синф", "Иккинчи синф" деб ўзгартирмоқчи бўлсангиз Дельфида проектни очасиз. Формадаги cbClasses ни танлаб туриб Object Inspector(F11) ни қарасангиз Items деган property си бор. Шу пропертини очсангиз (3 та нуқтали кнопкача) алоҳида окнода синфлар рўйхати очилади. Биринчи турган (Синфингизни танланг) дан бошқа любойини ўзгартирсангиз программанинг ишлашига таъсир қилмайди. Лекин битта носи бор. Item нинг Id сини синф сифатида базага жўнатаман. Яъни рўйхатдаги 1 сўзни ("Синфингизни танланг"дан кейинги) 48-синф деб ёзиб қўйсангиз ҳам барибир базага биринчи синф сифатида кетади. Чунки унинг ID си 1. Шу жойларини сал тузукроқ қилиш мумкин эди, лекин дангасалигим панд берди. Цитата:
1) DB (TIBDatabase): Базага уланиш учун асосий компонент. БД билан ишлайдиган бошқа компонентлар шу компонент орқали ишлайди. 2) TR (TIBTransaction): Транзакцияларни бошқариш учун хизмат қилади. БДдаги ёзувларга ўзгартириш киритилса (Insert, Update, Delete командалари орқали) бу компонент билан Commit (сақлаш, тасдиқлаш) ёки Rollback (отмена) қилинади. Бу компонент бизнинг программамизда умуман ишлатилмаган. Чунки базага фақат select билан мурожаат қиламиз. Имтихон топширган ўқувчиларнинг балларини ҳам базага ёзиб боришни план қилгандим. Нима сабабдан балларни базага ёзадиган қилмаганимни топингчи 3) qrAny (TIBQuery): базага SQL запрос жўнатиш учун хизмат қилади (асосан DML). Агар select запрос жўнатилса TIBTransaction ишлатилмайди, қолганлари учун TIBTransaction ишлатилади. 4) dsAny (TDataSource): qrAny билан select запрос орқали базадан олинган маълумотларни ўзида жадвал кўринишида сақлаб туради. Бу компонент бизнинг программамизда умуман ишлатилмаган. Керак бўлиб қолар деб қўшгандим. Олиб ташлаш эсимдан чиқибди. PHP код:
PHP код:
Параметрлари: 1) ds: TIBQuery: TIBQuery тоифали компонент (бизда qrAny). 2) zapa: string: базага жўнатиладиган запрос. 3) omode: smallint: qrAny ни қандай ишлатиш кераклигини белгилайдиган параметр (0 ёки 1). Агар select запрос жўнатсангиз 0, insert, update, delete запрослар учун 1. omode 0 бўлганда qrAny миз шунчаки "очилади". 1 бўлганда эса TR компонентида аввал транзакция бошланиди, qrAny запросимизни execute қилади. Охирида TR ни Commit қилади. Цитата:
БДга ўзгартириш IBExpert ёрдамида киритилади. Оффтоп: ПС: Саволлар бўлса http://forum.dastur.uz да ҳам беришингиз мумкин. Дастурлашга тегишли янги форум. Ҳали фойдаланувчимиз кам. Лекин асосий аъзолар(саволларга жавоб берувчилар) бор. Короче ПСни шу форумга одам йиғиш учун ёздим
__________________
Ошибки прошлого, мудрость будущего. (с)Д.Тернер. Последний раз редактировалось OmoN; 22.04.2011 в 20:08. |
|||
|
Ответить |
Реклама и уведомления | |
24.04.2011 15:01 | #50 |
MAKTAB
O`QITUVCHI
Сообщений: 682
+ 617
543/277
– 8
129/41
|
Uzr, buni o`qib tushungunimcha ancha vaqt o`tdi (albatta bunda Sizning aybingiz yo`q ), bunaqa narsalardan ancha chiqib qolibman, albatta men maqsadimni Sizga noto`g`ri tushuntirganman, buni tan olaman. Endi batafsilroq tushuntirishga harakat qilaman.
1. Asosiy maqsadim, kerakli narsalar dasturdan tashqarida va o`quvchilarning qo`li yetmaydigan joyda bo`lsin (menimcha bu maqsad amalga oshdi); 2. Sinflar emas, masalan Beginner, Elementary va shunga o`xshagan so`zlar bilan yozilsin (buni ham tushuntirdingiz shekilli, agar to`g`ri tushungan bo`lsam) 3. Ballarni nima sababdan bazaga yoziladigan qilganingizning sababini bilmadimu, ammo shu ballarni kerak bo`lib qolganda umumlashtirish iloji bo`lsa, yaxshi bo`lar edi. Masalan bolani men 6 ta dars so`zlari bo`yicha tekshirmoqchiman, hozirgi dasturim buni *.txt faylga yozadi va keyin men o`zim ularni bir-biriga qo`shib umumiy ballni chiqaraman, hozirgi paytga bu to`g`ri kelmaydi, bazaga ball yozilayotgan ekan, shuni umumlashtirish imkoni ham bo`lishi kerak, ha aytgancha, mening dasturim har bir o`quvchining ismi bilan ballarni yozadi. 4. Keyin, zarur bo`lib qolsa kimdir eslatganiday "randomize" qilish iloji bo`lsa ham yaxshi bo`lar edi. Hozircha shu, rahmat. |
|
Ответить |
|