Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Курс лекции по дисциплине Современные программные средства - файл Программирование с DAO и ADO.doc


Загрузка...
Курс лекции по дисциплине Современные программные средства
скачать (21152.1 kb.)

Доступные файлы (590):

Задание.doc21kb.05.02.2002 00:56скачать
Лекция_1.doc49kb.04.02.2004 09:27скачать
ЗАДАНИЕ.DOC37kb.13.02.2007 12:28скачать
Программирование с DAO и ADO.doc426kb.13.02.2007 17:20скачать
CRE_INFO.GID
CRE_INFO.HLP
Helpscr.doc213kb.11.09.1998 08:50скачать
README.TXT1kb.27.09.1998 08:05скачать
задание СПС лаб4.doc24kb.16.03.2005 12:15скачать
Задание.doc23kb.17.03.2006 16:06скачать
cube.swf
snegovic.swf
bubbles.fla
bubbles_Scene 1.swf
bubbles.swf
Animate-Shape Tween.fla
cube.fla
Dirt Gear.fla
Globe.fla
Sun Town.fla
Theater.fla
Writing Pen.fla
3d_animat.asp
3d_animat.swf
ani_but.asp
ani_but.swf
faq.asp
fla.asp
fonts.asp
f_viewer.swf
mail-list.asp
optimization.asp
player.swf
practic.swf
protect.asp
ruhelp.asp
rut.gif1kb.21.05.2000 22:16скачать
shortcuts.asp
sounds.asp
ssavers.asp
textfield.asp
trigger.asp
trigger.swf
2 Рисование.fla
5 Работа с текстом.fla
flash4_1_D.doc160kb.01.09.2001 06:27скачать
2 Слои.fla
flash4_2_layers.doc143kb.01.09.2001 06:27скачать
Имитация увеличительного стекла.doc32kb.05.04.2001 07:31скачать
3 Символы и Копии.fla
flash4_3_simbol.doc99kb.01.09.2001 06:29скачать
Skywriting.fla
Skywriting.swf
4 Кнопки.fla
5 Звуки.fla
flash4_5_sound.doc106kb.01.09.2001 06:30скачать
8 Анимация.fla
8 Анимация.swf
flash4_6_animation.doc98kb.01.09.2001 06:31скачать
Основы анимации.aviскачать
Macromedia Flash 5 (Лекция 1).doc217kb.19.11.2002 18:47скачать
test.swf
Вставка Flash.doc30kb.28.04.2004 15:17скачать
Вставка Flash-роликов в HTML.doc73kb.28.04.2004 11:10скачать
Использование SWiSH в HTML.doc80kb.28.04.2004 15:28скачать
Как вставить Flash в HTML.doc28kb.28.04.2004 15:40скачать
Код вставки SWF файла Flash MX.doc24kb.28.04.2004 15:54скачать
Am179.gif31kb.05.04.1998 14:42скачать
ANATOMY3.GIF12kb.20.02.1998 18:25скачать
ANATOMY5.GIF7kb.20.02.1998 18:23скачать
ANATOMY7.GIF10kb.20.02.1998 18:26скачать
anieyes.gif50kb.11.10.1998 03:43скачать
Aniheart.gif5kb.05.04.1998 14:46скачать
BAT.GIF13kb.20.02.1998 08:37скачать
BIRD2.GIF4kb.20.02.1998 08:23скачать
BULL1.GIF44kb.20.02.1998 08:25скачать
BULL.GIF15kb.20.02.1998 08:23скачать
BUTTE~56.GIF34kb.20.02.1998 08:18скачать
BUTTE~58.GIF51kb.22.02.1998 02:44скачать
CAT10.GIF25kb.20.02.1998 08:06скачать
CAT13.GIF20kb.20.02.1998 17:02скачать
CAT14.GIF9kb.20.02.1998 07:56скачать
CAT2.GIF28kb.20.02.1998 08:11скачать
CAT8.GIF12kb.20.02.1998 17:03скачать
CAT9.GIF3kb.20.02.1998 17:01скачать
DOG13.GIF5kb.22.02.1998 02:36скачать
DOG1.GIF12kb.20.02.1998 07:53скачать
DOLPHIN.GIF18kb.20.02.1998 16:53скачать
DOLPHINS.GIF18kb.20.02.1998 07:34скачать
DOVE.GIF102kb.20.02.1998 16:59скачать
EAGLES.GIF85kb.22.02.1998 02:45скачать
FISH.GIF31kb.20.02.1998 07:30скачать
FLAM~172.GIF10kb.20.02.1998 07:11скачать
FLYI~176.GIF17kb.20.02.1998 07:12скачать
FROG.GIF8kb.20.02.1998 07:09скачать
LEOPARD.GIF8kb.20.02.1998 06:56скачать
MONKEY2.GIF34kb.20.02.1998 06:59скачать
MOOSE.GIF19kb.20.02.1998 06:55скачать
MOUSE1.GIF27kb.20.02.1998 07:02скачать
MOUSE2.GIF11kb.20.02.1998 06:53скачать
MOUSE3.GIF39kb.20.02.1998 06:55скачать
MOUSE.GIF72kb.20.02.1998 16:53скачать
ORCA.GIF10kb.20.02.1998 06:52скачать
OWL.GIF34kb.20.02.1998 16:42скачать
POLA~232.GIF16kb.20.02.1998 06:52скачать
PTER~234.GIF14kb.20.02.1998 19:19скачать
PUMA.GIF10kb.20.02.1998 06:50скачать
REDWORMS.GIF4kb.20.02.1998 06:51скачать
SEAGULL.GIF5kb.20.02.1998 06:48скачать
SPIDER1.GIF7kb.20.02.1998 06:46скачать
SWAN.GIF31kb.20.02.1998 06:45скачать
TIGER1.GIF10kb.20.02.1998 06:42скачать
TIGER2.GIF39kb.20.02.1998 06:54скачать
TIGER3.GIF12kb.20.02.1998 06:40скачать
TIGER4.GIF6kb.20.02.1998 06:40скачать
TIGER5.GIF9kb.20.02.1998 06:40скачать
TIGER6.GIF22kb.20.02.1998 05:44скачать
TRACKS.GIF3kb.20.02.1998 05:35скачать
T-REX.GIF50kb.20.02.1998 16:42скачать
TURTLE2.GIF12kb.20.02.1998 05:31скачать
WORM.GIF4kb.20.02.1998 05:30скачать
ani-tri.gif2kb.03.11.1998 15:51скачать
A-ANI5.GIF38kb.20.02.1998 06:40скачать
ASTERO~8.GIF49kb.20.02.1998 16:40скачать
EARTH10.GIF24kb.20.02.1998 16:36скачать
EARTH12.GIF8kb.20.02.1998 16:33скачать
EARTH13.GIF36kb.20.02.1998 16:33скачать
EARTH14.GIF52kb.20.02.1998 16:34скачать
EARTH16.GIF15kb.20.02.1998 16:30скачать
EARTH18.GIF87kb.20.02.1998 16:35скачать
EARTH1.GIF10kb.20.02.1998 16:37скачать
EARTH2.GIF113kb.23.02.1998 14:01скачать
EARTH4.GIF21kb.20.02.1998 06:32скачать
EARTH6.GIF55kb.20.02.1998 16:47скачать
EARTH8.GIF18kb.20.02.1998 16:35скачать
EARTH9.GIF7kb.20.02.1998 06:23скачать
EARTHBUT.GIF8kb.20.02.1998 06:07скачать
EARTH.GIF28kb.20.02.1998 06:34скачать
GLDGLOBE.GIF87kb.20.02.1998 16:29скачать
GLOBE.GIF19kb.20.02.1998 06:07скачать
GP_GLO~6.GIF37kb.20.02.1998 06:07скачать
MOON1.GIF40kb.20.02.1998 06:04скачать
MOON2.GIF26kb.20.02.1998 16:25скачать
MOON3.GIF47kb.20.02.1998 06:04скачать
MOON.GIF14kb.20.02.1998 06:05скачать
PLANET1.GIF168kb.22.02.1998 23:17скачать
PLANET3.GIF146kb.20.02.1998 16:26скачать
PLANET.GIF20kb.20.02.1998 16:29скачать
PULSAR.GIF3kb.20.02.1998 05:48скачать
REDGLOBE.GIF68kb.20.02.1998 16:24скачать
SATURN.GIF30kb.20.02.1998 05:52скачать
SHINING.GIF7kb.20.02.1998 05:47скачать
SPIKE.GIF4kb.20.02.1998 05:48скачать
STAR1.GIF53kb.22.02.1998 22:22скачать
STAR2.GIF3kb.20.02.1998 05:48скачать
STAR3.GIF17kb.20.02.1998 05:45скачать
STAR4.GIF3kb.20.02.1998 05:40скачать
STAR5.GIF1kb.20.02.1998 05:39скачать
STAR6.GIF7kb.20.02.1998 05:41скачать
STAR7.GIF3kb.20.02.1998 05:41скачать
STAR8.GIF5kb.20.02.1998 05:39скачать
STAR.GIF2kb.20.02.1998 05:47скачать
STARRY.GIF9kb.20.02.1998 05:39скачать
STARS.GIF11kb.20.02.1998 05:52скачать
TWSTAR.GIF3kb.20.02.1998 05:37скачать
ABALL1AB.GIF9kb.20.02.1998 09:59скачать
ABALL1A.GIF7kb.20.02.1998 09:58скачать
ABALL2A.GIF9kb.20.02.1998 09:57скачать
ABALL3A.GIF9kb.20.02.1998 09:57скачать
ABALL4A.GIF9kb.20.02.1998 10:07скачать
ABALL6A.GIF9kb.20.02.1998 09:56скачать
AG_BALL3.GIF4kb.20.02.1998 09:58скачать
AN_ICONA.GIF6kb.20.02.1998 18:22скачать
BALL1.GIF4kb.20.02.1998 09:54скачать
BALL2.GIF2kb.20.02.1998 09:54скачать
BALL3.GIF4kb.20.02.1998 09:54скачать
BALL.GIF6kb.20.02.1998 09:57скачать
BLINE.GIF3kb.20.02.1998 09:53скачать
BLINK~42.GIF3kb.20.02.1998 09:53скачать
BLINKIE.GIF3kb.20.02.1998 09:53скачать
BLUBOU.GIF1kb.20.02.1998 09:52скачать
BLUEBALL.GIF9kb.20.02.1998 09:53скачать
BLUER~50.GIF11kb.20.02.1998 09:53скачать
BLUERED.GIF2kb.20.02.1998 09:52скачать
BLUES~52.GIF3kb.20.02.1998 09:52скачать
BLUEY~54.GIF10kb.20.02.1998 09:51скачать
BLUPULSE.GIF2kb.20.02.1998 09:51скачать
BNC_ANM.GIF5kb.20.02.1998 09:53скачать
BUBBLER.GIF6kb.20.02.1998 09:48скачать
CONENB.GIF50kb.20.02.1998 09:52скачать
GLOBE.GIF40kb.20.02.1998 18:25скачать
GOLD1.GIF2kb.20.02.1998 09:41скачать
GP_BUT27.GIF10kb.22.02.1998 23:59скачать
GP_BUT29.GIF18kb.20.02.1998 09:44скачать
GP_BUT37.GIF2kb.20.02.1998 09:37скачать
GP_BUT38.GIF1kb.20.02.1998 09:36скачать
GP_BUT39.GIF2kb.20.02.1998 09:39скачать
GP_BUT40.GIF7kb.20.02.1998 09:44скачать
GP_GLO~7.GIF77kb.24.02.1998 00:22скачать
GP_GLO~8.GIF6kb.20.02.1998 09:39скачать
GP_GLO~9.GIF5kb.20.02.1998 09:32скачать
GP_GRN~2.GIF13kb.20.02.1998 09:36скачать
GP_MOON.GIF8kb.20.02.1998 09:31скачать
GP_PIC3.GIF72kb.20.02.1998 09:36скачать
GP_PIC4.GIF119kb.24.02.1998 00:21скачать
G_SPIRAL.GIF9kb.23.02.1998 00:02скачать
PALLA.GIF8kb.20.02.1998 09:30скачать
PERLREDB.GIF2kb.20.02.1998 09:29скачать
PURPIN.GIF2kb.20.02.1998 09:29скачать
ROLLBALL.GIF5kb.20.02.1998 09:29скачать
ROTDONE.GIF25kb.20.02.1998 09:31скачать
SBUTTON.GIF15kb.20.02.1998 09:26скачать
SOC_ANM.GIF14kb.22.02.1998 23:59скачать
SPIK~126.GIF8kb.20.02.1998 09:22скачать
SQUI~128.GIF9kb.20.02.1998 09:29скачать
TCWD_106.GIF7kb.20.02.1998 05:29скачать
TCWD_118.GIF4kb.20.02.1998 05:29скачать
banner_3.gif14kb.22.12.1998 20:36скачать
1P_BAR1.GIF135kb.23.02.1998 20:41скачать
AG_BAR2.GIF3kb.20.02.1998 09:22скачать
ANIMA~22.GIF9kb.20.02.1998 09:21скачать
ANIM-BAR.GIF7kb.20.02.1998 09:20скачать
ANI-TUBE.GIF8kb.20.02.1998 09:19скачать
BAR_ANM.GIF7kb.20.02.1998 09:18скачать
BAR_EL.GIF11kb.20.02.1998 09:18скачать
BARMOVE.GIF28kb.20.02.1998 09:19скачать
BARSTAR.GIF5kb.20.02.1998 09:17скачать
BBOMB.GIF14kb.20.02.1998 09:17скачать
BEEP2.GIF4kb.20.02.1998 09:16скачать
BLOODBAR.GIF5kb.20.02.1998 09:17скачать
BLUEONE.GIF4kb.20.02.1998 09:16скачать
BLUERULE.GIF4kb.20.02.1998 09:16скачать
BLUETWO.GIF2kb.20.02.1998 09:15скачать
BOLT_ANI.GIF18kb.20.02.1998 09:15скачать
BOMBBAR.GIF11kb.20.02.1998 09:14скачать
BR_BAR.GIF12kb.20.02.1998 09:18скачать
BULBOUT.GIF2kb.20.02.1998 09:13скачать
BURST~70.GIF10kb.20.02.1998 09:14скачать
CANON.GIF15kb.20.02.1998 09:14скачать
CAT.GIF10kb.20.02.1998 09:16скачать
COLOR~82.GIF16kb.20.02.1998 09:17скачать
COLORBAR.GIF5kb.20.02.1998 09:13скачать
COLORLIN.GIF8kb.20.02.1998 09:13скачать
CON-BAR3.GIF7kb.20.02.1998 09:10скачать
COP.GIF13kb.20.02.1998 17:16скачать
DANCEBAR.GIF1kb.20.02.1998 09:09скачать
DOG_H~94.GIF64kb.20.02.1998 09:12скачать
DRIP1.GIF4kb.20.02.1998 09:09скачать
DRIP.GIF7kb.20.02.1998 09:09скачать
ELECTRIC.GIF6kb.20.02.1998 09:08скачать
FIREBAR2.GIF12kb.20.02.1998 09:09скачать
FIREBAR.GIF42kb.20.02.1998 09:12скачать
FLOW~110.GIF1kb.20.02.1998 09:07скачать
FUSS.GIF5kb.20.02.1998 09:07скачать
G_BAR_N3.GIF11kb.20.02.1998 09:08скачать
GEOBAR.GIF12kb.20.02.1998 09:09скачать
GP_BAR10.GIF12kb.20.02.1998 08:54скачать
GP_BAR11.GIF10kb.20.02.1998 17:12скачать
GP_BAR12.GIF18kb.20.02.1998 08:52скачать
GP_BAR1.GIF27kb.20.02.1998 09:05скачать
GP_BAR2.GIF45kb.20.02.1998 09:05скачать
GP_BAR3.GIF9kb.20.02.1998 17:16скачать
GP_BAR4.GIF13kb.20.02.1998 09:00скачать
GP_BAR5.GIF20kb.20.02.1998 09:00скачать
GP_BAR6.GIF17kb.20.02.1998 08:59скачать
GP_BAR7.GIF34kb.20.02.1998 17:13скачать
GP_BAR8.GIF62kb.23.02.1998 20:38скачать
GP_BAR9.GIF32kb.20.02.1998 08:59скачать
GP_GLO~5.GIF31kb.20.02.1998 08:55скачать
GREY~150.GIF14kb.20.02.1998 08:53скачать
HR1.GIF8kb.20.02.1998 08:49скачать
HR_S~156.GIF9kb.20.02.1998 08:50скачать
INDI~158.GIF10kb.20.02.1998 08:50скачать
JETRIGHT.GIF14kb.22.02.1998 02:46скачать
KILROY.GIF5kb.20.02.1998 08:48скачать
LASER.GIF6kb.20.02.1998 08:47скачать
LIBUNT.GIF1kb.20.02.1998 08:47скачать
LILRED.GIF3kb.20.02.1998 08:46скачать
LINE04C.GIF29kb.20.02.1998 17:15скачать
LINEDOT.GIF18kb.20.02.1998 08:47скачать
LOLLIPOP.GIF7kb.20.02.1998 17:11скачать
MATC~178.GIF9kb.20.02.1998 08:44скачать
NASCAR.GIF26kb.20.02.1998 17:12скачать
NEWS~182.GIF11kb.20.02.1998 08:41скачать
PROGRESS.GIF5kb.20.02.1998 08:38скачать
RULE02.GIF6kb.20.02.1998 08:38скачать
SABE~190.GIF30kb.20.02.1998 08:40скачать
SLIDBAR.GIF9kb.20.02.1998 08:36скачать
SPARK.GIF5kb.20.02.1998 08:33скачать
STAR~196.GIF14kb.20.02.1998 17:10скачать
WELLMESS.GIF12kb.20.02.1998 05:36скачать
WLCME.GIF8kb.20.02.1998 05:30скачать
YELLCAR.GIF28kb.20.02.1998 05:38скачать
BOOK2.GIF10kb.20.02.1998 18:57скачать
BOOK3.GIF20kb.20.02.1998 18:56скачать
ANIMASCT.GIF12kb.20.02.1998 11:32скачать
ANIRATZ.GIF4kb.20.02.1998 16:05скачать
ANMCALLE.GIF4kb.20.02.1998 11:32скачать
BUGSD~14.GIF68kb.20.02.1998 11:42скачать
CALVIN.GIF6kb.20.02.1998 11:28скачать
DEVIL~28.GIF8kb.20.02.1998 11:23скачать
DEVIL.GIF62kb.20.02.1998 11:30скачать
DRINK~30.GIF33kb.20.02.1998 11:22скачать
FOX.GIF18kb.20.02.1998 11:22скачать
FREAK~38.GIF3kb.20.02.1998 11:17скачать
GENIE.GIF67kb.20.02.1998 11:27скачать
GOLDHERO.GIF11kb.20.02.1998 11:15скачать
HERORUN.GIF57kb.20.02.1998 11:16скачать
OSCAR.GIF12kb.20.02.1998 10:59скачать
PNKPAN.GIF6kb.20.02.1998 10:58скачать
SHARPS.GIF99kb.20.02.1998 10:55скачать
SONIC.GIF5kb.20.02.1998 10:50скачать
SPIDE~54.GIF4kb.20.02.1998 10:50скачать
ST.GIF68kb.20.02.1998 10:56скачать
SUPER~58.GIF14kb.20.02.1998 10:49скачать
SYLVEST.GIF22kb.20.02.1998 10:49скачать
TWEETY.GIF9kb.20.02.1998 10:46скачать
VIKING.GIF38kb.20.02.1998 10:48скачать
WB.GIF16kb.20.02.1998 10:45скачать
WIZARD.GIF8kb.20.02.1998 10:43скачать
WOLF.GIF10kb.20.02.1998 10:43скачать
clownanim48.gif28kb.03.04.1998 17:05скачать
counting_fingers.gif4kb.11.10.1998 03:43скачать
3D.GIF20kb.20.02.1998 11:48скачать
COMETANI.GIF23kb.20.02.1998 11:49скачать
ORBIT.GIF57kb.20.02.1998 11:48скачать
WRING.GIF32kb.20.02.1998 11:37скачать
dancers.gif3kb.18.06.1998 21:05скачать
dansman.gif4kb.19.11.1998 02:53скачать
dtr10x.jpg35kb.18.03.1999 11:04скачать
dtr7.jpg25kb.07.11.1998 17:18скачать
ANI_EYE.GIF4kb.20.02.1998 12:00скачать
ANIMAL94.GIF22kb.20.02.1998 12:00скачать
EYE1.GIF17kb.20.02.1998 11:58скачать
EYE2.GIF41kb.20.02.1998 11:58скачать
EYE3.GIF19kb.20.02.1998 11:58скачать
EYE5.GIF17kb.20.02.1998 11:56скачать
EYE-LOOK.GIF3kb.20.02.1998 11:56скачать
EYE-MOV.GIF71kb.20.02.1998 12:00скачать
EYES2ANI.GIF30kb.20.02.1998 11:53скачать
EYES.GIF3kb.20.02.1998 11:54скачать
GP_PIC5.GIF134kb.20.02.1998 12:04скачать
GRN_E~40.GIF3kb.20.02.1998 11:50скачать
GRNEYES.GIF7kb.20.02.1998 11:49скачать
PEEP.GIF21kb.20.02.1998 13:12скачать
ANGEL.GIF54kb.20.02.1998 12:19скачать
ANKH.GIF8kb.20.02.1998 12:13скачать
DFLYGB.GIF28kb.25.02.1998 05:15скачать
DFLYGS.GIF28kb.25.02.1998 05:15скачать
DFLYSB.GIF19kb.25.02.1998 05:16скачать
DFLYS.GIF43kb.25.02.1998 05:16скачать
DRAGON~1.GIF12kb.20.02.1998 12:12скачать
DRAGON1.GIF41kb.20.02.1998 12:14скачать
DRAGON2.GIF18kb.20.02.1998 12:11скачать
HPS.GIF10kb.20.02.1998 12:10скачать
MONSTER.GIF11kb.20.02.1998 12:07скачать
PEGASUS2.GIF12kb.20.02.1998 12:05скачать
PEGASUS.GIF143kb.23.02.1998 20:26скачать
SORCE~44.GIF14kb.20.02.1998 12:05скачать
SPIRIT.GIF6kb.20.02.1998 12:05скачать
SWORD1.GIF51kb.20.02.1998 12:06скачать
SWORD.GIF23kb.20.02.1998 13:10скачать
SWORDS1.GIF23kb.20.02.1998 12:02скачать
UNUS_~58.GIF102kb.22.02.1998 02:34скачать
WIZARD1.GIF20kb.20.02.1998 13:08скачать
WRAITH.GIF24kb.20.02.1998 12:01скачать
ANI020.GIF22kb.20.02.1998 12:42скачать
BLUFIRE.GIF4kb.20.02.1998 12:42скачать
CANDLE1.GIF8kb.20.02.1998 12:41скачать
CANDLE2.GIF2kb.20.02.1998 12:41скачать
CANDLE3.GIF4kb.20.02.1998 12:40скачать
CANDLE6.GIF22kb.20.02.1998 12:48скачать
CANDLE7.GIF8kb.20.02.1998 12:45скачать
CANDLE.GIF10kb.20.02.1998 12:42скачать
DOOMFIRE.GIF13kb.20.02.1998 12:38скачать
DRKTORCH.GIF15kb.20.02.1998 13:10скачать
EXPLO~34.GIF19kb.20.02.1998 12:37скачать
FIRE001.GIF17kb.20.02.1998 12:35скачать
FIRE1.GIF7kb.20.02.1998 12:34скачать
FIRE2.GIF46kb.20.02.1998 12:36скачать
FIRE3.GIF6kb.20.02.1998 12:34скачать
FIREANM.GIF6kb.20.02.1998 12:33скачать
FIRELINK.GIF100kb.20.02.1998 12:41скачать
FIREW~54.GIF65kb.20.02.1998 13:09скачать
FIREW~56.GIF65kb.20.02.1998 12:33скачать
FIREW~58.GIF69kb.20.02.1998 12:33скачать
FIREWRKS.GIF37kb.20.02.1998 12:32скачать
FLAME1.GIF12kb.20.02.1998 13:07скачать
FLAME2.GIF4kb.20.02.1998 13:06скачать
FLAME3.GIF22kb.20.02.1998 13:07скачать
FLAME.GIF21kb.20.02.1998 12:30скачать
FLAMM~72.GIF7kb.20.02.1998 12:23скачать
FLIKER.GIF40kb.20.02.1998 13:07скачать
NUCLEAR.GIF34kb.20.02.1998 12:22скачать
RTORCH.GIF9kb.20.02.1998 12:19скачать
TORCH1.GIF16kb.20.02.1998 13:07скачать
TORCH.GIF12kb.20.02.1998 12:21скачать
TORCHSM.GIF16kb.20.02.1998 12:20скачать
ANIMDIAB.GIF26kb.20.02.1998 13:06скачать
BCROSS.GIF21kb.20.02.1998 13:06скачать
BLACK~10.GIF15kb.20.02.1998 13:05скачать
BONED~12.GIF23kb.20.02.1998 13:05скачать
BUTCHER.GIF15kb.20.02.1998 13:04скачать
CHESS.GIF23kb.20.02.1998 13:04скачать
DEDDI~20.GIF83kb.20.02.1998 12:49скачать
DIABL~24.GIF67kb.20.02.1998 13:03скачать
DIABL~26.GIF65kb.20.02.1998 13:12скачать
DIABL~28.GIF25kb.20.02.1998 13:02скачать
DIABL~30.GIF69kb.20.02.1998 13:06скачать
DNTIGER1.GIF16kb.20.02.1998 13:00скачать
DOOM2.GIF5kb.20.02.1998 13:00скачать
DRUIDD.GIF67kb.20.02.1998 13:03скачать
EXPLO~42.GIF26kb.20.02.1998 12:59скачать
FIGHTER.GIF8kb.20.02.1998 12:58скачать
GANGS.GIF47kb.25.02.1999 17:37скачать
INCIN~48.GIF21kb.20.02.1998 16:07скачать
INVIS~50.GIF12kb.20.02.1998 12:58скачать
KNIGHT.GIF35kb.20.02.1998 13:05скачать
LAZARUS.GIF21kb.20.02.1998 13:00скачать
LORDS~56.GIF25kb.20.02.1998 12:58скачать
MAGEAT.GIF19kb.20.02.1998 12:53скачать
MAGE.GIF30kb.20.02.1998 12:53скачать
MAGICIAN.GIF50kb.20.02.1998 13:02скачать
PEN.GIF27kb.20.02.1998 12:52скачать
PENTA~68.GIF3kb.20.02.1998 12:51скачать
PENTA~70.GIF11kb.20.02.1998 12:51скачать
QUAKE.GIF13kb.20.02.1998 12:51скачать
RAD.GIF10kb.20.02.1998 12:51скачать
ROGUEBOW.GIF12kb.20.02.1998 12:51скачать
SCORPIO.GIF14kb.20.02.1998 12:51скачать
SKULL~84.GIF5kb.20.02.1998 12:50скачать
SKULL~86.GIF9kb.20.02.1998 12:50скачать
SORCERF.GIF19kb.20.02.1998 12:50скачать
SUB-ZERO.GIF13kb.20.02.1998 12:52скачать
SUCCUBUS.GIF14kb.20.02.1998 12:50скачать
UNRAV~96.GIF9kb.20.02.1998 12:50скачать
UO.GIF13kb.20.02.1998 12:50скачать
WARRIORA.GIF17kb.20.02.1998 12:50скачать
WARRIORB.GIF19kb.20.02.1998 12:49скачать
WARRIOR.GIF19kb.20.02.1998 12:49скачать
HAND1.GIF37kb.20.02.1998 12:46скачать
HAND3.GIF55kb.20.02.1998 12:47скачать
HAND.GIF23kb.20.02.1998 12:46скачать
HANDS.GIF24kb.20.02.1998 12:45скачать
HANDWAVE.GIF17kb.20.02.1998 12:45скачать
HEART2.GIF10kb.20.02.1998 18:55скачать
ABELLL~6.GIF25kb.23.02.1998 04:29скачать
ABELLR~8.GIF24kb.23.02.1998 04:39скачать
XMASLT2.GIF21kb.23.02.1998 02:42скачать
hoparlor.gif10kb.02.04.1998 15:11скачать
hot_mix.gif20kb.09.06.1998 14:04скачать
line13.gif15kb.18.04.1998 02:16скачать
mailmove.gif7kb.18.05.1998 02:36скачать
1P_LVER1.GIF61kb.24.02.1998 19:22скачать
ALARMCL.GIF8kb.24.02.1998 19:20скачать
ANADIM.GIF29kb.24.02.1998 19:21скачать
ART.GIF33kb.24.02.1998 19:19скачать
ASTER.GIF13kb.24.02.1998 19:19скачать
BLOB.GIF5kb.24.02.1998 19:04скачать
BRUSH.GIF30kb.24.02.1998 19:04скачать
C_FAN.GIF13kb.24.02.1998 19:03скачать
CLAP.GIF49kb.24.02.1998 19:03скачать
$.GIF30kb.24.02.1998 19:22скачать
GUNANIM.GIF9kb.24.02.1998 18:51скачать
LLRINGS.GIF31kb.25.02.1998 05:16скачать
LOOKER1.GIF2kb.25.02.1998 05:16скачать
M14.GIF9kb.25.02.1998 05:16скачать
PLAYBOY.GIF9kb.24.02.1998 00:38скачать
RCHAIR.GIF30kb.24.02.1998 00:37скачать
REDRINGS.GIF37kb.24.02.1998 00:36скачать
RFHEA~40.GIF19kb.24.02.1998 00:37скачать
RING_ANM.GIF9kb.24.02.1998 00:36скачать
ROSE01.GIF22kb.24.02.1998 00:35скачать
STARR.GIF138kb.24.02.1998 00:32скачать
MOV11.GIF5kb.03.04.1998 17:10скачать
mp3cd.gif30kb.20.11.1998 05:07скачать
newSmCLR.gif2kb.18.06.1998 21:07скачать
PERL.GIF32kb.02.04.1998 15:20скачать
pulsar1.gif12kb.17.01.1998 21:25скачать
ATOM1.GIF7kb.24.02.1998 21:00скачать
ATOM2.GIF37kb.24.02.1998 21:00скачать
ATOM3.GIF25kb.24.02.1998 21:00скачать
NUC_AN3.GIF12kb.24.02.1998 20:59скачать
SPIKES.GIF15kb.24.02.1998 20:59скачать
DANCIN~8.GIF34kb.24.02.1998 20:54скачать
SKELE~14.GIF7kb.24.02.1998 20:52скачать
SKELE~16.GIF66kb.24.02.1998 20:52скачать
SKELEDAN.GIF22kb.24.02.1998 20:53скачать
SKELETON.GIF70kb.24.02.1998 20:54скачать
SKULL1.GIF40kb.24.02.1998 20:52скачать
SKULL2.GIF31kb.24.02.1998 20:52скачать
SKULL33.GIF4kb.24.02.1998 20:49скачать
SKULL3.GIF13kb.24.02.1998 20:50скачать
SKULL.GIF46kb.24.02.1998 20:51скачать
Smile.gif2kb.03.04.1998 17:10скачать
SMILELY.GIF1kb.03.04.1998 17:10скачать
ABDUCT~6.GIF33kb.24.02.1998 20:50скачать
ALIEN1.GIF14kb.24.02.1998 20:49скачать
ALIEN2.GIF17kb.24.02.1998 20:49скачать
ALIENBAL.GIF33kb.24.02.1998 20:49скачать
AL_IEN.GIF6kb.24.02.1998 20:49скачать
ALIEN.GIF15kb.24.02.1998 20:49скачать
ALION.GIF5kb.24.02.1998 20:47скачать
BORGSHIP.GIF121kb.24.02.1998 20:48скачать
COOL_D1.GIF15kb.24.02.1998 20:47скачать
FLASH.GIF5kb.24.02.1998 20:46скачать
FLYIN~30.GIF6kb.24.02.1998 20:46скачать
GBOWL.GIF22kb.24.02.1998 20:46скачать
KLINGON.GIF33kb.24.02.1998 20:45скачать
LIGHTMAN.GIF126kb.24.02.1998 20:47скачать
MECH10.GIF35kb.24.02.1998 20:40скачать
MECH1.GIF7kb.24.02.1998 20:43скачать
MECH2.GIF54kb.24.02.1998 20:45скачать
MECH3.GIF56kb.24.02.1998 20:43скачать
MECH4.GIF55kb.24.02.1998 20:43скачать
MECH5.GIF37kb.24.02.1998 20:41скачать
MECH6.GIF53kb.24.02.1998 20:42скачать
MECH7.GIF62kb.24.02.1998 20:41скачать
MECH8.GIF60kb.24.02.1998 20:41скачать
MECH9.GIF15kb.24.02.1998 20:39скачать
NXTGEN.GIF53kb.24.02.1998 20:38скачать
R2D2.GIF146kb.24.02.1998 20:39скачать
REDSHIP.GIF95kb.24.02.1998 20:37скачать
SHIPANI.GIF39kb.24.02.1998 20:34скачать
SHIP.GIF96kb.24.02.1998 20:36скачать
SPACE~84.GIF27kb.24.02.1998 20:29скачать
SPACE~90.GIF76kb.24.02.1998 20:31скачать
SPACE~92.GIF46kb.24.02.1998 20:27скачать
SPACE.GIF111kb.24.02.1998 20:34скачать
SPSHIP10.GIF10kb.24.02.1998 20:16скачать
SPSHIP12.GIF44kb.24.02.1998 19:44скачать
SPSHIP1.GIF28kb.24.02.1998 20:24скачать
SPSHIP2.GIF104kb.24.02.1998 20:24скачать
SPSHIP3.GIF18kb.24.02.1998 20:22скачать
SPSHIP4.GIF67kb.24.02.1998 20:22скачать
SPSHIP6.GIF36kb.24.02.1998 20:21скачать
SPSHIP7.GIF36kb.24.02.1998 20:20скачать
SPSHIP8.GIF114kb.24.02.1998 20:21скачать
SPSHIP9.GIF42kb.24.02.1998 20:18скачать
SPSHIP.GIF84kb.24.02.1998 20:26скачать
STARBADG.GIF14kb.24.02.1998 19:43скачать
STARWARS.GIF102kb.24.02.1998 19:42скачать
TIEF~130.GIF74kb.24.02.1998 19:42скачать
TREK.GIF21kb.24.02.1998 19:39скачать
VOYBAR2.GIF17kb.24.02.1998 19:38скачать
WINK~142.GIF19kb.24.02.1998 19:38скачать
XWINGS.GIF25kb.24.02.1998 19:38скачать
Spicker.gif6kb.03.11.1998 16:03скачать
thatsall200.gif21kb.13.12.1998 12:43скачать
CAMERA1.GIF108kb.25.02.1998 05:13скачать
XFILES.GIF25kb.25.02.1998 05:09скачать
under5.gif6kb.13.04.1998 00:28скачать
LIGHT~14.GIF37kb.25.02.1998 05:13скачать
LIGHT~18.GIF42kb.25.02.1998 05:13скачать
TWISTER2.GIF13kb.25.02.1998 05:09скачать
задание СПС лаб6.doc27kb.20.04.2005 11:14скачать
1. РАЗРАБОТКА СПРАВОЧНЫХ HTML-СИСТЕМ.DOC103kb.24.02.2001 09:44скачать
2. ОБЗОР СИСТЕМЫ HTML HELP.DOC95kb.24.02.2001 07:47скачать
3. Работа с HTML Work Shop.doc225kb.28.03.2005 11:56скачать
4. ИНФОРМАЦИОННЫЕ МАТЕРИАЛЫ HTML И ФАЙЛ ПРОЕКТА.DOC54kb.23.02.2001 11:07скачать
5. MICROSOFT HTML HELP.DOC263kb.24.02.2001 10:04скачать
Как организовать вызов дополнительного окна на гиперссылку.doc30kb.23.03.2005 22:33скачать
Добавление закладки ПОИСК в HTML-HELP.doc56kb.23.03.2005 23:01скачать
Создание Pop-Up окна в HTML-HELP файлах.doc53kb.21.03.2005 23:51скачать
Встраивание сценариев в HTML.doc27kb.28.03.2005 20:46скачать
Прочие элементы.doc26kb.27.03.2005 20:23скачать
Словарь по HTML для начинающих.doc43kb.28.03.2005 15:06скачать
Таблица цветов RGB и HTML.doc232kb.28.03.2005 15:15скачать
1. Добавление Flash к Html-Help.doc43kb.27.03.2005 18:59скачать
2. Подключение Flash к html.doc41kb.26.03.2005 10:27скачать
3. Атрибуты тэгов OBJECT и EMBED.doc76kb.26.03.2005 01:00скачать
Hh_C++.pdf77kb.12.02.2001 06:56скачать
Hh_VB.pdf60kb.12.02.2001 06:56скачать
1. ИСПОЛЬЗОВАНИЕ HTML HELP В ПРИЛОЖЕНИЯХ НА VISUAL BASIC.DOC123kb.24.05.2005 19:31скачать
2. Добавление HTML Help в приложение VB 6.0.doc28kb.02.04.2010 11:57скачать
3. Как вызывать help из приложения С++.doc48kb.06.03.2005 10:05скачать
4. Использование HTML Help в проекте MFC.doc29kb.17.03.2005 14:52скачать
Теги HTML.doc1691kb.31.03.2006 14:36скачать
01. Все, что нужно знать о программировании в Macromedia Flash.doc178kb.04.05.2005 14:38скачать
02. СПРАВОЧНИК по программированию во FLASH.doc407kb.04.05.2005 14:37скачать
03. ОБЪЕКТНО ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ в ACTION SCRIPT.doc605kb.03.05.2005 17:24скачать
04. Программирование клиентских приложений с использованием Macromedia Flash.doc133kb.28.03.2005 19:09скачать
05. ЯЗЫК ACTION SCRIPT.doc2998kb.20.04.2005 10:27скачать
06. ActionScript - во Flash.doc104kb.30.03.2005 11:08скачать
07. Отладка во Flash 5.doc124kb.01.03.2004 11:23скачать
08. Обнаружение ошибок в именах переменных Actionscript.doc26kb.26.11.2003 10:45скачать
09. Создание элементов сайтов с использованием Flash.doc133kb.28.03.2005 19:20скачать
10. Программное создание часов во Flash.doc76kb.28.03.2005 19:24скачать
11. Программирование во Flash.doc54kb.01.03.2004 10:54скачать
12. Стандарты Actionscript.doc218kb.26.03.2005 01:07скачать

Программирование с DAO и ADO.doc

  1   2   3
Реклама MarketGid:
Загрузка...
Введение

В этом уроке вы должны научиться использовать объектные модели доступа к данным. Для этого возьмем типовые задачи, которые приходится решать в процессе разработки приложения. Поскольку в Access 2002 можно использовать две объектные модели для досту­па к данным — DАО и ADO, — мы будем рассматривать примеры параллельно и в той и в другой модели.


ПРИМЕЧАНИЕ При описании синтаксиса методов употребляются русские термины для аргументов методов DАО и английские — в модели ADO. Это связано с тем, что при использова­нии методов ADO, как правило, применяют именованные аргументы, и имена аргумен­тов должны совпадать с терминами, используемыми при описании синтаксиса.


Чтобы работать с данными в базе данных, нужно сначала выполнить соединение с этой базой данных, то есть получить на нее ссылку. В модели DAO это будет ссылка на объект Database, а в модели ADO — на объект Connection. А когда ссылка получена, можно обращаться к семействам и объектам этой базы данных. Поэто­му начнем рассматривать операции с данными со способов установки соедине­ния с базами данных.


^ Соединение с текущей базой данных

В объектной модели DAO возможны два способа установки ссылки на текущую базу данных:

Dim db As Database

Set db = DBEngine.Workspaces(0).Databases(0)

Это означает, что текущая база данных является первым объектом в семействе Databases рабочей области по умолчанию.


ВНИМАНИЕ Семейство Workspaces содержит все объекты Workspace, соответствующие открытым рабочим областям. Приложение Access может одновременно использовать любую комбинацию рабочих областей Jet и ODBCDirect а значит, и множество одновремен­но действующих сеансов. При первом обращении приложения Access к любому объекту ОАО автоматически создается объект Workspace — DBEngine.Workspaces(O), который является рабочей областью по умолчанию


Семейство Workspaces является стандартным для объекта DBEngine, а семейство Databases — стандартным для объекта Workspace, поэтому по правилам синтакси­са языка вместо полной ссылки, приведенной выше, можно использовать сокра­щенную: DBEngine(0)(0).

^ Dim db As Database

Set db = CurrentDB

В данном случае применяется метод CurrentDB объекта Application. Метод CurrentDb входит в набор глобальных методов, поэтому для его вызова можно использо­вать сокращенную ссылку без префикса Application с точкой. Оба способа можно использовать в программах VBA, но нужно знать различие между ними. В первом случае возвращается ссылка на открытый экземпляр те­кущей базы данных, а во втором — создается новый экземпляр этой базы данных.


ПРИМЕЧАНИЕ Метод CurrentDB позволяет создать несколько объектных переменных; которые ссы­лаются на разные копии одной и той же базы данных и с которыми можно работать независимо, что позволяет избежать конфликтов в многопользовательских приложениях.


В объектной модели ADO, чтобы получить доступ к данным в текущей базе дан­ных, используется объект CurrentProject модели объектов Access. Этот объект со­здается автоматически, когда открывается файл базы данных, и имеет свойство Connection, которое и содержит всю необходимую информацию для осуществле­ния доступа к данным:

^ Dim cnnDB As ADODB.Connection

Set cnnDB = CurrentProject.Connection

Сначала должна быть объявлена переменная, которая ссылается на объект Connec­tion библиотеки ADODB. Затем этой переменной присваивается значение.

ВНИМАНИЕ Если в одном приложении используются объекты и ОАО и ADO, нужно при объявлении объектных переменных указывать объектную модель, которая будет использована. Это связано с тем, что одни и те же имена объектов встречаются и в той и в дру­гой модели, например Connection, Recordset. Если имя объектной модели не указа­но, по умолчанию используется та библиотека, которая встречается раньше в списке ссылок.


^ Открытие базы данных, отличной от текущей

Для работы с базой данных, отличной от текущей, то есть той, которая открыта в окне базы данных, используется метод OpenDatabase. Этот метод имеют два объекта объектной модели DAO: Workspace и DBEngine.

Если применить метод OpenDatabase объекта Workspace, база данных будет откры­та в указанной рабочей области. Если применить метод OpenDatabase объекта^

Метод OpenDatabase возвращает ссылку на объект Database и имеет следующий синтаксис:

^ Set <переменная> = <объект>.ОреnDatabaseе(<имяФайла>, [<списокПараметров>], [<режим>], [<соединение>]),

где <переменная> — имя переменной, которая является ссылкой на объект Database; <объект> — объект Workspace или DBEngine. По умолчанию (когда объект явно не упоминается) используется метод объекта DBEngine.

Метод имеет один обязательный аргумент — имя файла существующей базы данных. Остальные аргументы являются необязательными. Например, аргумент <режим> используется для открытия базы данных только для чтения (значение True) или для чтения и записи (значение False). Аргумент <соединение> — для указания параметров соединения с источником данных, в том числе пароля. В листинге 5.1 приводится пример открытия базы данных Библиотека.mdb.


Листинг 5.1. Открытие базы данных

Dim ws As Workspace

Dim db As Database

'выбираем рабочую область

Set ws = DBEngine.Workspaces(O)

'открываем базу данных, при этом можно указать полный путь к файлу

^ Set db = ws.OpenDatabase ("Библиотека.mdb")

'Код работы с данными

db.Close ' Закрываем базу данных

Set db = Nothing ' Очищаем объектные

Set ws= Nothing ' переменные


Последний аргумент метода OpenDatabase— <соединение>— используется так­же для получения доступа к базам данных других форматов. Он представляет собой символьную строку следующего типа:

<типИсточникаДанных>;[<списокПараметров>].

О возможных типах источника данных и параметрах вы можете узнать из Справки Microsoft Access (свойство Connect объектов Database и Connection). Но в следую­щем примере (листинг 5.2) показано, как открыть базу данных из источника ODBC, Paradox и защищенную паролем базу данных Access.


Листинг 5.2. Открытие баз данных разных форматов (DАО)

Dim db As Database

'открываем базу данных из источника ODBC

Set db = DBEngine(O).OpenDatabase("", False, False,

"ODBC;DSN=Northwi nd;DATABASE=Northwi nd;UID=sa;PWD=") 'открываем базу данных Example в формате Paradox

^ Set db = DBEngine(O).OpenDatabase("", False, False,

"Paradox 4.0;DATABASE=C:\PARADOX\Example")

'открываем базу данных Access, защищенную паролем

Set db = DBEngine(0).OpenDatabase(“MyDB.mdb”,False,False, _

;PWD=password”)

Обратите внимание, что при открытии базы данных Access защищенной паролем, строка соединения начинается со знака точка с запятой (;). Это означает, о используется тип источника данных по умолчанию — Access.

объектной модели ADO, чтобы получить доступ к данным в некоторой базе иных (не текущей), обязательно должен быть создан объект Connection. Объ-т Connection представляет собой одно подключение к провайдеру OLE ОВ.Он 1жет быть создан как явно, так и неявно в процессе создания других объектов иерархии ADO. В любом случае этот объект содержит информацию об источ-ке данных (что это за файл, какого типа), о том, где он находится и какой тип провайдера будет использоваться.

Явно создать объект Connection можно с помощью метода Open. Метод Open mo-it иметь четыре аргумента, однако все они не являются обязательными. Каж-му аргументу метода соответствует определенное свойство объекта Connection. )этому в программе можно либо использовать значения аргументов по умол-нию, либо установить нужные значения соответствующих свойств до выпол-ния метода Open, либо задавать параметры при вызове метода Open.

ПРИМЕЧАНИЕ В большинстве случаев свойства объекта ADO должны устанавливаться до того, как объект будет создан (открыт). А после создания объекта они становятся доступными только для чтения. Если при вызове метода Open передаются фактические парамет­ры, то значения этих параметров наследуются соответствующими свойствами созда­ваемого объекта.


Основным аргументом, который обязательно должен быть задан, является строка соединения (подключения). Ей соответствует свойство ConhectionString. Строка подключения содержит всю информацию, необходимую для того, чтобы найти и сконфигурировать провайдер OLE DB для доступа к нужному источнику данных. Эта строка состоит из пар параметр=значение, разделенных знаком точка с запятой (;).

Строка соединения может содержать большое число параметров и, следовательно, быть достаточно длинной. Но как минимум в ней должны быть указаны имя провайдера OLE DB и источник данных.

НОВОЕ В версии Microsoft Access 2002 появилась возможность в качестве альтернативы строки подключения использовать адреса URL для указания источника данных. Они могут использоваться также при открытии объектов Recordset, Record и Stream.


Ниже приводятся два различных способа открытия базы данных (листинги 5.3 5.4). При первом способе сначала устанавливается свойство Provider, а затем зывается метод Open, и ему в качестве параметра передается имя файла базы данных, с которым нужно установить соединение. При втором — все необходимыe данные передаются в строке подключений. И в том и в другом случае в результате выполнения такого кода создается объект Connection, устанавливается свойство ConnectionString, и осуществляется соединение.

О других параметрах строки подключений мы будем говорить дальше по мере знакомства с другими объектами доступа к данным.


Листинг 5.3. Открытие базы данных (ADO — вариант 1)

Dim cnn As ADODB.Connection

Инициапизируем объект Connection

Set cnn = New ADODB.Connection

Указываем провайдер: Microsoft Jet 4.0 Provider

With cnn

.Provider = "Microsoft.Jet.OLEDB.4.0" ' Сокрываем базу данных

.Open "Библиотека.mdb"

'Код работы с данными

End With

' Закрываем объект Connection и очищаем объектную переменную.

cnn.Close

Set cnn = Nothing


Листинг 5.4. Открытие базы данных (ADO — вариант 2)

Dim cnn As New ADODB.Connection

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _

"Data Source = Библиотека.mdb"

'Код работы с данными



cnn.close

Set cnn = Nothing


Если строка подключения длинная, можно использовать специальный тип фай­ла — Microsoft Data Link, или UDL (universal data link), для хранения парамет­ров соединения. В этом случае инструкция открытия базы данных будет выгля­деть следующим образом:

cnnDB.Open "File Name = C:\DataLinks\Библиотека.udl"

Чтобы создать файл UDL, раскройте папку, в которой вы хотите создать этот файл, щелкните правой кнопкой мыши и выберите в контекстном меню команду Создать > Microsoft Data Link (New > Microsoft Data Link). Будет создан новый файл. Дайте этому файлу название, а потом откройте двойным щелчком кнопки мыши. Появится диалоговое окно Свойства связи с данными (Data Links Properties). Раскрой­те вкладку Поставщик услуг (Provider) и выберите из списка нужный провайдер. Затем раскройте вкладку Подключение (Connection) и укажите параметры соеди­нения с источником. Вид этой вкладки зависит от выбранного провайдера. Для Microsoft.Jet.OLE DB.4.0 она выглядит, как показано на рис. 5.1. На вкладке Дополнительно (Advanced) можно выбрать права доступа (значение свойства Mode).

ПРИМЕЧАНИЕ Использование файла DDL удобно тем, что строка подключения создается с помощью графического интерфейса и может быть легко изменена (код программы при этом не меняется).


Используя Microsoft Jet 4.0 OLE DB Provider, можно выполнить соединение с любым из источников данных ISAM, поддерживаемых ядром Jet 4.O. Для этого устанавливается свойство Extended Properties объекта Connection, которое являет­ся динамическим свойством объекта. Доступ к нему осуществляется только че­рез семейство Properties.



В листинге 5.5 показано, как установить соединение с таблицей Excel.


Листинг 5.5. Установка соединения с таблицей Excel (ADO)

Dimm cnn As ADODB.Connection

Set cnn = New ADODB.Connection

Устанавливаем свойства Provider и Extended Properties объекта Connection и открываем файл Example.xls

With cnn

.Provider = "Microsoft.Jet.OLEDB.4.0"

^ .PropertiesC'Extended Properties") = "Excel 8.0";

.Open C:\EXCEL\Example.xls

End With


Кроме уже указанных свойств объекта Connection существует еще несколько в, которые могут быть установлены до открытия соединения.

  • ConnectTimeout позволяет установить время ожидания установки соединения, умолчанию это значение равно 15 с. Если в течение этого времени не про­шло открытия соединения, возникает ошибка.

  • Mode позволяет установить права доступа к данным в открываемом соединении. Существует 8 значений этого свойства, которые задаются встроенными стантами, приведенными в табл. 5.1.

  • CursorLocation позволяет указать, где будут создаваться и обрабатываться курсоры на сервере или на клиенте. По умолчанию будут использоваться серверные курсоры, однако можно использовать клиентские курсоры, которые обеспечивают локальное кэширование и пакетное обновление данных. Мож­но вообще не использовать курсоры. Вопросы, касающиеся курсоров, более подробно будут рассмотрены далее в разделе «Работа с записями».



Таблица 5.1. Значения свойства Mode объекта Connection

Константа

Описание

acModeUnknown

Права доступа не установлены (значение по умолчанию)

acModeRead

Только чтение

acModeWrite

Только запись

acModeReadWrite

Чтение/запись

acModeShareDenyRead

Монопольный режим чтения

acModeShareDenyWrite

Монопольный режим записи

acModeShareExdusive

Монопольный режим

acModeShareDenyNone

Режим совместного использования

ПРИМЕЧАНИЕ В приведенных выше примерах показано, как явно создать соединение с источником данных посредством ADO. Но в отличие от объектной модели ОАО, объектная модель ADO не требует явного создания соединения для работы с данными. Соединение может создаваться неявно при выполнении команд, создании наборов записей и вы­полнении запросов к данным а указанном источнике, что, конечно, удобно, посколь­ку сокращает количество строк кода, но злоупотреблять этим не стоит. При работе в мно­гопользовательском режиме следует всегда заботиться об экономии количества со­единений, так как в противном случае это может вызвать проблемы, особенно для удаленных источников данных. Примеры неявных соединений будут показаны ниже.


^ Создание базы данных

В объектной модели DАО создать и открыть новую базу данных можно с помощью метода CreateDatabase объектов DBEngine и Workspace. Глобальным является метод CreateDatabase объекта DBEngine.

Метод CreateDatabase создает новый объект Database, добавляет его в семейство Databases открытых баз данных в рабочей области, сохраняет базу данных на диске и возвращает ссылку на открытый объект Database. Этот метод используется толь­ко в рабочей области ядра Microsoft Jet и имеет следующий синтаксис:

Set <переменная> = <объект>. CreateDatabase (<имяФайла>, <порядок>, [<списокПараметров>]).

Как и при открытии существующей базы данных, <переменная> — это имя объект­ной переменной, представляющей собой ссылку на открытый объект Database, а <объект> может быть одним из объектов: DBEngine или Workspace. Метод имеет два обязательных аргумента: имя файла создаваемой базы данных и строковое выражение, определяющее порядок символов, который будет использоваться в операциях сравнения строк и сортировки в создаваемой базе данных.


Необязательный аргумент представляет собой константу или комбинацию кон­стант, которые определяют один или несколько параметров: версию формата данных и режим шифрования или дешифровки (или дешифрования) базы дан­ных во время сжатия. Эти константы приведены в справке Access

.

Листинг 5.6. Создание базы данных (DАО)

'используем метод объекта DBEngine

^ Set dbl = CreateDatabase("\\server\share\NewDB.mdb")

Set db2 = DBEngine.CreateDatabaseC'C:\NewDB", DbLangCyrillic)

'использование метода объекта Workspace для создания 'зашифрованной базы данных

^ Set db3 =Workspaces(O).CreateDatabase("C:\NewDB.mdb",,dbEncrypt)


Из приведенного примера (листинг 5.6) видно, что при использовании метода CreateDatabase объекта DBEngine можно применить сокращенную ссылку или ука­зать префикс DBEngine с точкой. А при использовании метода объекта Workspace нужно указать конкретную рабочую область, как, это показано в следующем примере. В объектной модели ADO, чтобы создать новую базу данных Access и устано­вить с ней соединение, используется метод Create объекта Catalog библиотеки s AD ОХ. Синтаксис этого метода следующий:

<catalog>.Create <connectionString>. -|

При выполнении метода создается и открывается новый объект Catalog, который ; описывается строкой соединения <connectionString>. При этом так же, как и при использовании DАО, можно явно указать порядок символов, который будет ис­пользоваться в операциях сравнения и сортировки в создаваемой базе данных. Для этого применяется параметр Locale Identifier строки соединения. В листин­ге 5.7 приводятся примеры создания новой базы данных Access.


Листинг 5.7. Создание базы данных (ADO)

Dim cat As New ADOX.Catalog

Dim catNewDB As New ADOX.Catalog

'создаем новый файл базы данных Access и устанавливаем

'с ним соединение

cat.Create "Provider=Microsoft.Jet.OLEDB.4.0; _

Data Source=c:\new.mdb"

'создаем новый файл базы данных Access и определяем 'порядок сортировки

catNewDB.Create "Provider=Microsoft.Jet.OLEDB.4.0;" &_

"Locale Identifier=1036;Data Source= c:\new.mdb"


ВНИМАНИЕ Библиотека объектов ADOX не подключается автоматически во время установки Microsoft Access 2002. Вы должны установить ссылку на эту библиотеку из диалого­вого окна References (Ссылки) редактора VBA .



Диалоговое окно со всеми подключенными библиотеками ADO показано на рис. 5.2.


Доступ к таблицам базы данных Access

После установки соединения с источником данных обеспечивается доступ ко bccn объектам этой базы данных. Основными объектами, в базе данных Access явля ются таблицы. Все таблицы базы данных Access, включая присоединенные, скры тые и системные, содержатся в семействе TableDefs объектной модели ОАО. Тш таблицы определяется значением свойства Attributes объекта TableDef. В листин ге 5.8 приводится пример процедуры, которая печатает имена и типы всех таб лиц в базе данных Библиотека.mdb. !

Листинг 5.8. Печать объектов семейства TableDefs (DAO)

Sub PrintTablesO

Dim ws As Workspace, db As Database, td As TableDef

'выбираем рабочую область

^ Set ws = DBEngine.Workspaces(O)

'открываем базу данных

Set db = ws .OpenDatabase ("С:\Библиотека.mdb")

For Each td in db.TableDefs

Debug.Print td.Name & vbTab & td.Attributes

Next td

db.Close ' Закрываем базу данных

Set db = Nothing ' Очищаем объектные

Set ws= Nothing ' переменные

End Sub


Семейство TableDefs является стандартным семейством объекта Database, поэтому к его объектам можно обращаться с помощью сокращенной ссылки, например:


^ Dim db As Database, strType As String, strName As String

Set db = CurrentDB

strType = db!Авторы.Connect

strName = db!Авторы.SourceTableName


В приведенном примере переменной strType присваивается значение свойства Connect присоединенной таблицы Авторы, определяющее тип и местонахождение таблицы, а переменной strName — значение свойства SourceTableName, которое содержит имя присоединенной таблицы в источнике1. В объектной модели ADOX семейство Tables содержит ссылки на все таблицы л представления (запросы на выборку) базы данных. В семейство входят также хылки на присоединенные и системные таблицы. Определить тип таблицы можно тутем проверки свойства Туре объекта Table. В табл. 5.2 приведены строковые значения, которые возвращаются при проверке свойства Туре с помощью Microsoft Jet 4.0 OLE DB Provider. Таким образом, семейство Tables обеспечивает программный доступ к любой таблице и запросу на выборку базы данных.


Таблица 5.2. Значения свойства Туре объекта Table

Тип

Описание

Access Table

Системная таблица Access

Link

Связанная таблица из источника данных, отличного от ODBC

Pass-Through

Связанная таблица из источника данных ODBC

System Table

Системная таблица Microsoft Jet

Table

Обычная таблица

View

Запрос без параметров, возвращающий набор записей (запрос на выборку)


Как видно из этой таблицы, в модели ADOX, как и в модели DAO, различаются вязанные таблицы из источников данных ISAM и ODBC. Если связанная таблица находится в базе данных ISAM, свойство Туре возвращает значение Link, если в базе данных ODBC, — значение Pass-Through.

В листинге 5.9 приводится пример получения списка таблиц базы данных Библиотека.mdb


Листинг 5.9. Печать имен и типов таблиц (ADO — вариант 1)

Dim cat As ADOX. Catalog

Dim tbl As ADOX.Table 'создаем объект Catalog

Set cat = New ADOX.Catalog

cat.ActiveConnection ="Provider=Microsoft.Jet.OLEDB.4.0; "_

& "Data Source=C:\Библиотека.mdb"


'печатаем имена и типы всех таблиц (запросов в этой базе данных нет)

For Each tbl In cat.Tables

Debug.Print tbl.Name & vbTab & tbl.Type

^ Next

Set cat = Nothing


В этом примере используется другой метод создания объекта Catalog. Вместо использования метода Create, как это делалось в предыдущих примерах, сначала объявляется новый объект Catalog, а затем присваивается значение его свойству ActiveConnection. Затем объект Catalog используется для доступа к семейству Tables таблиц и запросов базы данных.

Обратиться к существующей таблице базы данных можно сразу после создания объекта Catalog, просто указав имя таблицы или ее индекс в семействе Tables, например:

^ Dim cat As New ADOX.Catalog, strName As String

cat.ActiveConnection = CurrentProject.Connection

strName = cat.Tables(0).Name


В этом примере в качестве объекта Connection используется соединение с теку­щей базой данных.

Альтернативным способом доступа к таблицам базы данных посредством объектов ADO является применение метода OpenSchema объекта Connection. Установив соединение с базой данных посредством объекта Connection, можно выполнить метод OpenSchema и получить объект Recordset, который содержит информацию о схеме данных источника, возвращаемую провайдером OLE DB. Синтаксис ме­тода OpenSchema следующий:

Set <переменная> = <connection>.OpenSchema (<типЗапроса>, [<критерий>],

[<идентификаторСхемы>]),

где <connection> представляет собой ссылку на объект Connection. Метод имеет один обязательный аргумент — <типЗапроса>. Это константа, кото­рая определяет тип возвращаемой информации. Может возвращаться информа­ция о таблицах, представлениях, процедурах, индексах и других объектах базы данных. Остальные аргументы необязательны. Их значения вы можете посмот­реть в Справке Access (метод OpenSchema объекта Connection). Ниже приведен пример использования метода OpenSchema и провайдера Microsoft Jet 4.0 для получения списка таблиц в базе данных Библиотека.mdb (листинг 5.10).


Листинг 5.10. Печать имен и типов таблиц (ADO — вариант 2)

Dim cnn As New ADODB.Connection

Dim rstSchema As ADODB.Recordset

'устанавливаем соединение с базой данных

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" &_

"Data Source=C:\Библиотека.mdb

'создаем объект Recordset

Set rstSchema = cnn.OpenSchema(adSchemaTables)

'выводим на печать имена и типы таблиц базы данных

^ Do Until rstSchema.EOF

Debug.Print "Имя таблицы: " & rstSchema.Fields _

("TABLE_NAME") & " тип: " & rstSchema.Fields _

("TABLE_TYPE") & vbCr

rstSchema.MoveNext

Loop

rstSchema.Close

cnn.Close

При переборе таблиц этот метод работает быстрее, чем цикл по всем объектам семейства Tables объектной модели ADOX.


^ Создание, изменение и удаление таблиц

Семейства TabteDefs и Tables имеют все стандартные свойства и методы семейства зектов:

  • свойство Count, возвращающее количество таблиц в семействе;

  • метод Append для добавления новой таблицы в семейство;

  • метод Delete для удаления таблицы из семейства;

  • метод Refresh для обновления семейства.

Это значит, что можно программным путем добавлять в базу данных таблицы и удалять их.

Алгоритм создания новой таблицы также одинаков в обеих моделях.

  1. Создается новый объект — таблица.

  2. Создаются все подчиненные объекты — поля таблицы, индексы, если нужно, и т.д.

  3. Все подчиненные объекты добавляются в соответствующие семейства,

  4. Главный объект — таблица — добавляется в семейство

Для создания нового объекта TableDef используется метод CreateTableDef объекта Database, который инициализирует объектную переменную, содержащую ссылку на таблицу.

Синтаксис метода CreateTableDef:

Set <переменная> = <database>.CreateTableDef ([<имяТаблицы>], [<атрибуты>],

[источник>], [<соединение>]),

;database> — ссылка на объект Database.

Посольку все аргументы метода CreateTableDef являются необязательными, можно пускать, а затем при необходимости установить значения соответствующих свойств объекта TableDef.

Аргумент <имяТаблицы> представляет собой имя создаваемой таблицы. Аргумент <атрибуты> — это константа или комбинация констант, которая определяет характеристики создаваемой таблицы. Аргументы используются, если создается присоединенная таблица. Имя этой таблицы в текущей базе данных может отличаться от имени таблицы в базе данных-источнике, поэтому аргумент <источник> опрделяет имя таблицы в базе данных-источнике. Аргумент <соединение> представляет собой строку соединения, которая определяет тип и местонахождение источника данных, например, для таблицы Excel аргумент <соединение> может содержать значение "Excel 8.0; DATABASE=C:\TABLES\SUMMARY.XLS".

После того, как новая таблица создана, необходимо определить ее структуру, то есть свойства полей. Прежде чем добавить ее в семейство TableDefs, нужно определить хотя бы одно поле, в противном случае Access выдаст сообщение об ошибке. Чтобы создать поле, используется метод CreateField объекта TableDef, который имеет следующий синтаксис:

Set <nepeменная> = <tableDef>.CreateField ([имя], [тип], [размер]).

Метод CreateField имеет три необязательных аргумента, позволяющие определить три свойства поля: имя, тип данных и размер. Поскольку аргументы не являют­ся обязательными (как и при создании таблицы), их можно опустить, а позже установить соответствующие свойства объекта Field. Созданные поля нужно обя­зательно добавить в семейство Fields.

Когда структура таблицы определена, можно добавить ее в семейство TableDefs, используя метод Append, и затем вызвать метод Refresh, чтобы обновить семей­ство. Удалить таблицу, если она больше не нужна, можно с помощью метода Delete.

СОВЕТ Метод Refresh семейства TableDefs рекомендуется применять после каждого добавления, удаления или изменения объекта TabteDef. Это особенно важно в многополь­зовательских приложениях.

ВНИМАНИЕ Недостаточно создать объект и установить его свойства, если это объект не временный. Чтобы сохранить его в базе данных, нужно обязательно добавить его в соответ­ствующее семейство. В противном случае Access ничего не будет «знать» о его суще­ствовании, и объект просто «исчезнет».

Листинги 5.11 и 5.12 демонстрируют примеры использования этих методов.


Листинг 5.11. Создание таблиц (DАО — вариант 1)

Sub CreateTempTable ()

Dim db As Database, td as TableDef, fid As Field

Set db = CurrentDB 'создаем новую таблицу

Set td = db.CreateTableDef("ВремТовары") 'создаем поля таблицы и добавляем их в семейство Fields

^ Set fid = td.CreateField("KoдПpoдyктa", dbText.5)

td. Fields.Append fid

Set fid = td.CreateFieldC'HanMeHOBaHHe", dbText,50)

td.Fields.Append fid

Set fid = td .CreateField("OnncaHne")'можно и так

fid.Type = dbText

fid.Size = 255

td. Fields.Append fid 'добавляем таблицу в семейство TableDefs

db.TableDefs.Append td 'обновляем семейство TableDefs

db.TableDefs.Refresh

db.Close End Sub


Листинг 5.12. Удаление таблицы (DАО — вариант 1)

Sub DeleteTempTableO

Dim db As Database,

^ Set db = CurrentDB

'удаляем таблицу из семейства TableDefs

db.TableDefs.Delete "ВремТовары"

'обновляем семейство TableDefs

db.TableDefs.Refresh

db.Close

End Sub


Существует еще один способ изменения структуры базы данных — использова-ше метода Execute объекта Database для выполнения инструкций языка SQL. Этот 1етод позволяет выполнить любую инструкцию языка, в том числе и подмноже-тво инструкций языка определения данных DDL (Data Definition Language). 5 листингах 5.13 и 5.14 приведены примеры тех же процедур, но написанных использованием инструкций языка DDL.

Листинг 5.13. Создание таблицы (DАО — вариант 2) Sub CreateTempTable ()

Dim db As Database, strDDL As String

Set db = CurrentDb

'создаем новую таблицу

strDDL = "CREATE TABLE ВремТовары"

strDDL = strDDL & "КодТовара ТЕХТ(5),"

strDDL = strDDL & "Наименование TEXT(50),"

strDDL = strDDL & "Описание ТЕХТ(255)"

db.Execute strDDL

'закрываем базу данных

db.Close

End Sub


Листинг 5.14. Удаление таблицы (DAO — вариант 2) Sub DeleteTempTableQ

^ Dim db As Database, strDDL As String

Set db = CurrentDB

'удаляем таблицу из семейства TableDefs

strDDL = "DROP TABLE ВремТовары"

db.Execute strDDL

db.Close

End Sub

Для изменения структуры таблицы следует использовать свойства объектов Field мейства Fields объекта TableDef или инструкцию DDL ALTER TABLE.

Например, чтобы удалить все поля из таблицы ВремТовары, нужно выполнить цикл:

For i = 1 То db.TableDefs("BpeMToBapbi").Fields.Count

db.TableDefs("ВремТовары").Fields.Delete get_column_name(i)

Next i

В качестве аргумента метода Delete указывается имя удаляемого поля, возвраща-зе функцией get_column_name. Добавить новое поле можно так же, как это сазано для новой таблицы. Используя свойства объекта Field, можно изменить >йства любого поля таблицы. С инструкцией ALTER TABLE и другими инструк-ши SQL вы познакомитесь в уроке 6.

В модели ADO процессы создания, изменения и удаления таблиц аналогичны описанным выше процессам в модели DАО, только вместо объекта Database используется объект Catalog, вместо семейства TableDefs — семейство Tables, а вместо семейства Fields — семейство Columns библиотеки ADOX. Пример, приведенный в листинге 5.15, демонстрирует применение этих объектов.


Листинг 5.15. Создание временной таблицы (ADO)

Dim cat As ADOX.Catalog, tbl As ADOX.Table

Set cat = New ADOX.Catalog

'открываем каталог

cat.ActiveConnection = "Provider=Microsoft.Jet .OLEDB.4.0;" & _

"Data 5ource=C: \Склад.mdb"

‘создаем новый объект Table

Set tbl = New ADOX.Table

With tbl

.Name = "ВремТовары" 'создаем поля и добавляем их в семейство Columns

With .Columns

.Append "КодТовара", adVarWChar

.Append "Наименование", adVarWChar

.Append "Описание", adLongVarWChar

End With

End With

'добавляем новую таблицу к семейству Tables базы данных

cat .Tables.Append tbl

Set cat= Nothing


При создании полей таблицы первым параметром метода Append является имя поля, а вторым — тип данных. Для указания типа данных используются встро­енные константы. Например, adVarWChar соответствует типу данных Текстовый в Access. Список констант в моделях DAO и ADOX и соответствующих им типов данных Access приведен в табл. 5.3.

Таблица 5.3. Типы данных в моделях DАО и ADOX

Тип данных Access

ОАО

ADOX

Числовой (размер поля — байт)

dbByte

adllnsignedTinylnt

Числовой (размер поля — целое)

dblnteger

adSmalLInt

Числовой или счетчик

dbLong

adSmalllnt

(размер поля — длинное целое)





Поле объекта OLE

dbLongBinary

adLongVarBinary

Поле MEMO

dbMemo

adLongVarWChar

Текстовый

dbText

adVarWChar

Гиперссылка

dbMemo, и свойство Attributes должно иметь значение dbHyperlinkField

adLongVarWChar, и свойство Column должно иметь значение JetOLEDB:Hyperlink

Следующие два примера (листинги 5.16 и 5.17) демонстрируют, как выполняет­ся присоединение таблицы, размещенной в другой базе данных Access. Метод Append в ADOX позволяет объединить создание объекта и добавление его в семейство. Этой возможностью мы и воспользовались в данном примере.


Листинг 5.16. Присоединение внешних таблиц (DAO)

Sub CreateLinkedAccessTableQ

Dim db As Database, tdf As TableDef

^ Set db = CurrentDB

'создаем новую таблицу

Set tdf = db.CreateTableDef ("Издания")

'устанавливаем свойства таблицы

tdf.Connect = " ;DATABASE=C:\Библиотека(данные).mdb"

tdf.SourceTableName = "Издания"

'добавляем таблицу в семейство

TableDefs db.TableDefs.Append tdf

End Sub


В модели ADO, чтобы указать путь к внешнему источнику данных и имя присо­единяемой таблицы, нужно установить значения двух свойств семейства Properties объекта Table: Jet OLEDB:Link Datasource и Jet OLEDB:Remote Table Name. Кроме того, свойству Jet OLEDB:Create Link должно 'быть присвоено значение True.

ПРИМЕЧАНИЕ Объекты Connection, Command, Recordset и Field и коллекция Parameters модели —^ADODB, а также объекты Table, Index и Column модели ADOX имеют семейство Properties. Каждое такое семейство включает стандартные (встроенные) свойства соответствующего объекта и дополнительные (динамические) свойства, которые за­висят от используемого провайдера OLE DB, и поэтому называются свойствами про­вайдера. Эти динамические свойства не всегда присутствуют для объекта, хотя для всех объектов одного типа от одного провайдера они будут одинаковы. Ссылаться на эти свойства можно только через семейство Properties. Свойства провайдера мож­но отличить от стандартных свойств по префиксу, который присутствует в их именах. Например, объект Connection не имеет стандартного свойства, позволяющего указать файл рабочих групп (файл .mdw) для защищенной на уровне пользователей базы данных Access (файл .mdb) (в модели ОАО такое свойство есть у объекта DBEngine и называется оно SystemDB). Но объект Connection имеет свойство Jet OLEDB:System database. Это свойство входит в семейство Properties и может быть использовано для данной цели. Информацию о свойствах провайдера Microsoft Jet 4.0 OLE DB Provider можно найти в файле ADOProperties.DOC в папке ODETools\V9\Samp'les\OPG\Appenixes компакт-диска из комплекта Microsoft Office 2000 для разработчиков.


Листинг 5.17. Присоединение внешней таблицы (ADO)

Sub CreateLinkedAccessTableO

Dim cat As ADOX.Catalog

Dim tbl As ADOX.Table

Set cat = New ADOX.Catalog

'устанавливаем соединение с базой данных,

'к которой будем присоединять таблицу
  1   2   3



Скачать файл (21152.1 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru