Sous FreeBSD je quelque chose ne me suis pas décidé de m'occuper de cela, eh bien, тат comme comme le remplacement винде et il fallut faire. La tâche est telle : est прога sur java, qui par ODBC communique avec MSAccess par la base, voici il fallait obliger cette déformation travailler sous ubuntu. D'abord étaient établis unixodbc et mdbtools. Champ de leur installation d'aucunes étiquettes dans le menu n'est pas apparu, les équipes аля unixodbc mdbtools n'ont pas fait faire un tour, dans la recherche надыбыл/usr/share/menu/unixodbc-bin mais là-bas déjà ODBCConfig, il faut dire au sens de celle-ci гуишной les enveloppes non beaucoup, et n'a pas compris comme normalement que faire là, toutes les erreurs donnait, par la voie expérimentée et гуглом était éclairci que que faut tout se trouve à /etc/odbc.ini et /etc/odbcinst.ini. À il y avait odbcinst.ini des réglages du driver MSAccess qui à moi всётаки on réussit à fourrer. а à odbc.ini réglages System DNS où doit se trouve proprement описалово конекта vers la base, rien de complexe n'était làПод FreeBSD я что-то не решился этим заниматься, ну тат вроде как замена винде и делать пришлось. Задача такова: есть прога на java, которая через ODBC общается с MSAccess базой, вот это извращение нужно было заставить работать под ubuntu. Для начала были установлены unixodbc и mdbtools. Поле их установки никаких ярлыков в меню не появилось, команды аля unixodbc mdbtools не прокатили, через поиск надыбыл /usr/share/menu/unixodbc-bin а то туда уже ODBCConfig, надо сказать толку от этой гуишной оболочки не много, так и не разобрался как нормально что там сделать, всё ошибки выдавал, опытным путём и гуглом было выяснено, что все что надо находится в /etc/odbc.ini и /etc/odbcinst.ini. В odbcinst.ini находились настройки драйвера MSAccess которые мне всётаки удалось запихнуть. а в odbc.ini настройки System DNS где собственно и должно находится описалово конекта к базе, ничего сложного там не было
11 22 33 44 55 66 77 88
| [myConnection][myConnection] Description = Microsoft AccessTS Description = Microsoft AccessTS Driver = MDB1 Driver = MDB1 Database = /home/vampirus/db1.mdb Database = /home/vampirus/db1.mdb Servername = localhost Servername = localhost UserName = UserName = Password = Password = Port = 5432 Port = 5432 |
помойму seulement Driver, Database il est nécessaire ici mais une fois travaille et ainsi cela a laissé)помойму только Driver,Database тут нужны но раз работает и так то оставил)
A contrôlé le travail проверил работу
11 22
| isql-v myConnectionisql -v myConnection select * from Realtion select * from Realtion |
Travaille, eh bien, je pense зашибись, il est simple ainsi, je contrôlerai le soir, comme là java avec cela se liera d'amitié, et est allé au travail.работает, ну думаю зашибись, так просто, вечером проверю, как там java с этим подружится, и пошёл на работу.
Le soir. Вечером.
Sur la tentative de la mise en marche прога tombait avec l'exception, encore en effet, j'ai décidé on ne sait pourquoi que sera mieux si mettre Open-jdk вмето sun’овского. A mis Bien сановкий jdk. Et ici m'attendait la surprise, probablement le driver tortu ou que, mais à n'importe quelle disposition était Result Set Type is not supported. Il se Trouve de MSAccess il fallait отказыватся, je vaux mieux que rien mysql n'a pas inventé. Il faut dire mettre mysql php apache moi ne voulait pas, car pour ces buts je voulais mettre FreeBSD sur vieux комп. Eh bien, je pense il sera utile bien mysql encore pour quelque chose. Car php on ne voulait pas mettre, a décidé eh bien, j'essaierai par perl il ne doit pas être difficile, mais le module (ou comment lui là ?) DBD:ODBC Il ne se trouva pas, sur sa tentative de livrer Makefile.pl a donné quel cela les l'erreurs, comprendre à qui небыло d'aucun désir. Ensuite pour l'importation, a décidé поробовать mdbtools, non mettait en vain, mais sur combien j'ai pu comprendre l'importation allait seulement à csv, eh bien, je pense ici sur python j'essaierai, le bien avec csv je sur lui travaillais déjà, mais ici m'attendait подлянка, le travail avec mysql devait livrer, а était déjà la paresse. La dernière tentative était kexi sous FreeBSD elle comme à mysql à moi a jeté (ou non, непомню), mais ici elle refusait de faire cela et tombait. про попытке запуска прога выпадала с исключением, ещё бы ведь я почему-то решил что будет лучше если поставить Open-jdk вмето sun’овского. Ладно поставил сановкий jdk. И тут меня ждал сюрприз, видимо драйвер корявый или что, но при любом раскладе было Result Set Type is not supported. Получается от MSAccess надо было отказыватся, ничего лучше mysql я не придумал. Надо сказать ставить mysql php apache я не хотел, т.к. для этих целей я хотел поставить FreeBSD на старый комп. Ну ладно думаю пригодится mysql ещё для чего-нибудь. т.к. php ставить не хотелось, решил ну попробую через perl не сложно должно быть, но модуля(или как он там?) DBD:ODBC не оказалось, про попытке его доставить Makefile.pl выдал какие то ошибки, разбираться в которых небыло никакого желания. потом для импорта, решил поробовать mdbtools, не зря же ставил, но на сколько я смог понять импорт шёл только в csv, ну думаю тут на python попробую, благо с csv я на нём уже работал, но тут меня ждала подлянка, для работы с mysql надо было что-то доставить, а было уже лень. Последней попыткой была kexi под FreeBSD она вроде в mysql мне перекинула(или нет, непомню), но тут она отказывалась это делать и падала.
Уторо du soir мудренее. Уторо вечера мудренее.
Il fallait à la fois mettre php et ne pas faire le fanfaron, ah oui il fallut balancer encore le driver odbcmysql et orienter, mais c'est les bagatelles. скриптик le temps mort de rien complexe Надо было сразу поставить php и не выпендриваться, ах да ещё пришлось качнуть драйвер odbcmysql и настроить, но это мелочи. скриптик простой ничего сложного
11 22 33 44 55 66 77 88 99 1010 1111 1212 1313 1414
| <? php <?php
$r = odbc_connect ("myConnection", "", "");
$r = odbc_connect("myConnection","","");
$q = odbc_exec ($r, "select * from Relation");
$q = odbc_exec($r,"select * from Relation");
$conn = mysql_connect ("localhost", "root", "password");
$conn = mysql_connect("localhost","root","password");
mysql_selectdb ("db1");
mysql_selectdb("db1");
while (odbc_fetch_row ($q)) {
while(odbc_fetch_row($q)){ $PS=odbc_result ($q, "PS"); $PS=odbc_result($q,"PS"); $Parg = odbc_result ($q, "Parg"); $Parg = odbc_result($q,"Parg"); $X = odbc_result ($q, "X"); $X = odbc_result($q,"X"); $R = odbc_result ($q, "relation"); $R = odbc_result($q,"relation"); $Y = odbc_result ($q, "Y"); $Y = odbc_result($q,"Y"); mysql_query ("INSERT INTO Relation (PS, Parg, X, relation, Y) VALUE (' $PS', ' $ Parg ', ' $X ', ' $R ', ' $Y ')"); mysql_query("INSERT INTO Relation (PS,Parg,X,relation,Y) VALUE ('$PS','$Parg','$X','$R','$Y')");
}
?>
?> |
Et voici je de la sûre lance прогу, а elle à moi allez à travers bois, le tableau RELATION, comment ainsi ? Il l'y a je dis (eh bien, je ne me suis pas habitué encore que le registre a une importance), je rebaptise bien le tableau à RELATION, а elle à moi non celle-là les tableaux Relation, ah tu le sou … = quoi signifies делат прогу à винде au groupe la personne. Ayant traduit tout vers le registre commun, java tout a mangé et a commencé à travailler)и вот я с надежной запускаю прогу, а она мне идите лесом, таблицы RELATION нету, как так? есть она говорю(ну не привык я ещё что регистр имеет значение), ладно переименовываю таблицу в RELATION, а она мне нету таблицы Relation, ах ты су… @= во что значит делат прогу в винде группе человек. Переведя всё к единому регистру, java всё скушала и начала работать)
30Jul 200830Jul 2008
Les commentaires frais
Свежие комментарии