Но MS Access може да комуникира с други SQL-сървър, и Microsoft ни кара да си взаимодействат с MS SQL Server, ни предоставя всичко необходимо за това. Но аз избрах "мускули", поради следните причини.
-- Официален безплатно за предприемача
-- Възможност за легално изтеглите пакета (от 16 до 50 MB, в зависимост от разпределението) от интернет
-- Cross-платформа (не се притеснявайте, вашият сървър работи всяка операционна система)
-- Лесен за инсталиране (до един прост копие!) И актуализация
-- Наличието на пълна и последователна документация
-- Това означава, че MySQL - сървър, който е винаги с вас
Етапи на организацията на MS Access-MySQL приложения
Вие трябва да направите следното:
Инсталиране на MySQL сървър
За Windows, има три вида distibutiva
MySQL работи под Windows два начина:
Започвайки mysqld.exe файл
Стартирането на услугата, създадени по време на инсталацията (освен ако не посочите по време на инсталацията, трябва да се създаде услуга MySQL)
Създаване на кирилица подкрепа за MySQL
При провеждане на MySQL на Windows, можете да конфигурирате настройките му за използване my.ini файла
Така my.ini конфигурационен файл.
# Опциите за конфигуриране на сървъра MySQL
[Mysqld]
порт = 3306
гнездо = /tmp/mysql.sock
прескачане блокировка
key_buffer = 16K
max_allowed_packet = 1М
table_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 64K
# Задаване кирилицата към сървъра
подразбиране знака настроени = cp1251 # Определяне на кодирането
характера-комплекти-реж = гр: / MySQL / акции / набори от знаци # укажете пътя до кодировки на папките (приспособи към вашия сървър!)
# Параметри за конфигуриране на програмата за архивиране
[Mysqldump]
бърз
max_allowed_packet = 16M
# Задаване кирилицата към сървъра
подразбиране знака настроени = cp1251 # Определяне на кодирането
характера-комплекти-реж = гр: / MySQL / акции / набори от знаци # укажете пътя до кодировки на папките (приспособи към вашия сървър!)
# Параметри за конфигурация за mysql.exe на програмата клиент
[Mysql]
не-авто-преповтарям
# Задаване кирилицата към сървъра
подразбиране знака настроени = cp1251 # Определяне на кодирането
характера-комплекти-реж = гр: / MySQL / акции / набори от знаци # укажете пътя до кодировки на папките (приспособи към вашия сървър!)
[Isamchk]
key_buffer = 8М
sort_buffer_size = 8М
[Myisamchk]
key_buffer = 8М
sort_buffer_size = 8М
Създаване на база данни заявка
Свързване към база данни се извършва от ваше име. След инсталацията на сървъра е налице един потребител корен @ Localhost с празна парола (в по-старите версии е друг -. Root @ '%', но в последните версии вече не е I, от съображения за сигурност). Така pervіe стъпки, които трябва да изпълнява на сървъра.
Въведете командния ред на Windows (Start / Start → Run / Run → ПМС), задаване на текущата директория е директория поддиректория бин MySQL (в моя случай това е G: \ MySQL \ бин):
F: \> G:
G: \> CD MySQL \ бин
и напишете командата да се свърже с MySQL
Водещ и порт за настройките по подразбиране - съответно Localhost и 3306, паролата за корен все още (Сега ние ще определи това). И вие ще бъдете подканени да въведете MySQL SQL команди:
G: \ MySQL \ бин> MySQL -uroot
Добре дошли в монитора MySQL. Команди завършват с; или \ г.
Вашият MySQL връзка е номер 2 до сървъра версия: 5.0.27-общността
Тип "помощ;" или '\ ч "за помощ. '\ В "Тип за изчистване на буфера.
Първото нещо, което трябва да се направи - промяна на администраторската парола: Това е очевиден изисквания за безопасност.
MySQL> актуализация mysql.user зададете парола = Password ( "VashParol"), където потребителското = 'корен "и домакин =' Localhost";
Критерии OK, 0 редове засегнати (0.06 сек)
Редове съвпадение: 1 Changed: 0 предупреждения: 0
MySQL> изплакнете привилегии;
Критерии OK, 0 редове засегнати (0.08 сек)
Паролата бе променена. Но нашият разговор отива дори и при старата парола. Prervom ни сесия и zaydom с нова парола.
G: \ MySQL \ бин> MySQL -uroot -p
Въведете парола: *********
MySQL> / * създадете потребител, при които ще дойдат приложение MS Access * /
. Mysql> Разрешете всички привилегии на ImyaBazyDannyh *, за да "логин'@'192.168%" определени от "парола";
Критерии OK, 0 редове засегнати (0.03 сек)
MySQL> / * Създаване на нашите данни за бази от данни * /
MySQL> създадете ImyaBazyDannyh база данни;
Критерии OK, един ред засегната (0.00 сек)
MySQL> / * Създаване на маса * /
MySQL>
Създайте таблица в MySQL командния ред твърде уморително. Ето защо, трябва да изберете един от двата най-добър подход.
G: \ MySQL \ бин> MySQL -uroot -p ImyaBazyDannyh<Путь к файлу с инструкциями create table
Ще ви бъде поискана парола, а ако никога не сте направили грешка, ще бъде създаден на масата
Инсталиране на драйвера ODBC на всички машини, които се изпълняват молбата си
Стартирайте инсталационната програма за инсталиране на всякакви смислени въпроси той не го питат. За проблеми с инсталирането на драйвера, аз дори не чувам.
Промяна на кода на приложението - да се свързва автоматично маси
Ръчно създаване на ODBC източник и да го свържете към масата - не е методите на професионално развитие. Тук VBA примерен код за създаване на ODBC източник и е свързана, и таблици
Създаване на ODBC източник
Създаден или презаписани ODBC източник следното изявление:
DBEngine.RegisterDatabase ImyaIstochnikaODBC, ImyaODBC шофьор, вярно, StrokaParametrovPodklyucheniya
Дим се свърже като String
свържете = "сървъра = 192.168.1.1; потребителското = мениджър; парола = Зоро; порт = 3306; stmt = определени имена cp1251"
DBEngine.RegisterDatabase "TM", "MySQL ODBC 3.51 Driver", Вярно е, свържете
Обърнете внимание на параметъра stmt: тя позволява на MS Access правилно подкрепа на кирилицата.
Премахване на всички свързани с таблици
"Изтриване на всички свързани с таблици
Функционални Drop_linked_tables () Както Булева
На Error GoTo oblom
Дим TD Както TableDef
Дим tableName Както стринга
За Всеки TD В CurrentDb.TableDefs
Ако (вляво (TD.connect, 5) = "ODBC;") или (вляво (TD.connect, 10) = "; база данни =") След това
tableName = TD.Name
CurrentDb.TableDefs.Delete (tableName)
Крайна сметка, ако
Следваща TD
CurrentDb.TableDefs.Refresh
Exit Function
oblom:
Drop_linked_tables = False
Свързване на MySQL таблици чрез ODBC
"Свързване на MySQL таблици чрез ODBC
Функция StartConnectMySQL (ByVal вход Както стринга, ByVal odbcName Както стринга, ByVal db Както стринга) Както Булева
На Error GoTo oblom
Обаждането е Drop_linked_tables "Изтриване на всички свързани таблици
Дим newTD Както TableDef
Дим WS Както Workspace
Задайте WS = CreateWorkspace ( "ws_MySQL", "", "", dbUseODBC)
Дим се свърже Както стринга
свържете = "ODBC; база данни =" db "DSN =" odbcName
Дим MySQL Както DAO.Connection
Задайте MySQL = ws.OpenConnection (odbcName, dbDriverComplete, False, свържете)
Дим заявка Както стринга
заявка = "използване" db
MySQL.Execute (заявка)
заявките = "покажи маси"
Дим първо Както DAO.Recordset
Задайте първо = MySQL.OpenRecordset (заявка, dbOpenDynaset)
Направя, докато не rst.EOF
Комплект newTD = CurrentDb.CreateTableDef (RST (0))
newTD.connect = "ODBC; DSN =" odbcName "База данни =" db
newTD.SourceTableName = първия (0)
CurrentDb.TableDefs.Append newTD
rst.MoveNext
контур
Exit Function
oblom:
StartConnectMySQL = False
Ние прегледахме целия процес приложения MS Access, за да си взаимодействат преход в MySQL. Резултатът плаща за усилията, които ще се изискват от вас по този начин: Вие ще получите за кандидатстване, която е решила следните проблеми:
защита на база данни срещу увреждане на потребителите
Записване на действията на потребителите (лог файловете)
В допълнение, сега имате следните възможности:
-- Гледка към развитие, съхранени процедури, тригери
-- Използването на сделки
-- Взаимодействие с WEB приложения
-- Дистанционна конфигурация на сървъра на базата данни
Надявам се, че има нещо, което да ви помогне по пътя към тези възможности.
Свързани статии