Unter FreeBSD habe ich mich etwas davon nicht entschieden, sich zu beschäftigen, also, musste man тат anscheinend wie der Ersatz винде und machen. Die Aufgabe ist dies: ist прога auf java, die sich durch ODBC mit MSAccess von der Basis umgeht, diese Verdrehung musste man zwingen, unter ubuntu zu arbeiten. Waren unixodbc und mdbtools fürs erste bestimmt. Das Feld ihrer Anlage keiner Etikette im Menü ist nicht erschienen, die Mannschaften аля unixodbc mdbtools haben, durch die Suche надыбыл/usr/share/menu/unixodbc-bin sonst dorthin schon ODBCConfig nicht zur Fahrt mitgenommen, man muss dem Sinn von diesem гуишной die Hüllen nicht viel sagen, hat sich wie normal was nicht zurechtgefunden, dort zu machen, alle Fehler gab aus, erfahrungsgemäß war es und Google aufgeklärt, dass aller was notwendig sind befindet sich in /etc/odbc.ini und /etc/odbcinst.ini. In befanden sich die Abstimmungen des Treibers MSAccess die mir всётаки odbcinst.ini es gelang, hineinzustopfen. Und in die odbc.ini Abstimmungen System DNS wo eigentlich soll eben befindet sich описалово конекта zur Basis, nichts war kompliziert dortПод 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 |
помойму nur Driver, Database sind hier nötig aber Mal arbeitet und so jenes hat) abgegebenпомойму только Driver,Database тут нужны но раз работает и так то оставил)
Hat die Arbeit geprüft проверил работу
11 22
| isql-v myConnectionisql -v myConnection select * from Realtion select * from Realtion |
Arbeitet, ich denke зашибись also, so ist es einfach, am Abend werde ich prüfen, wie sich dort java damit anfreunden wird, und ist auf die Arbeit gegangen.работает, ну думаю зашибись, так просто, вечером проверю, как там java с этим подружится, и пошёл на работу.
Am Abend. Вечером.
Über dem Versuch des Starts прога fiel mit der Ausnahme aus, noch habe ich doch aus irgendeinem Grunde entschieden was, wenn besser sein wird Open-jdk вмето sun’овского zu stellen. Gut hat сановкий jdk gestellt. Und hier wartete auf mich die Überraschung, offenbar der Treiber rauh oder dass, aber in jedem Fall war es Result Set Type is not supported. Es sich von MSAccess ergibt es war отказыватся notwendig, als nichts bin mysql ich besser hat nicht erdacht. Man muss stellen mysql php apache ich sagen wollte nicht, da für diese Ziele ich FreeBSD auf alt комп stellen wollte. Also, denke ich gut wird mysql noch für etwas nützlich sein. Da php stellen es wollte nicht, hat also, entschieden werde ich durch perl probieren, nicht kompliziert sein soll, aber des Moduls (oder wie er dort?) DBD:ODBC Es zeigte sich nicht, über seinem Versuch, Makefile.pl zu liefern hat welche jenes die Fehler ausgegeben, sich in die небыло keines Wunsches zurechtzufinden. Später hat für den Import, поробовать mdbtools entschieden, stellte nicht umsonst, aber auf wieviel konnte ich den Import verstehen ging nur in csv, ich denke hier auf python also, ich werde probieren, das Wohl mit csv arbeitete ich darauf schon, aber hier wartete auf mich подлянка, für die Arbeit mit mysql musste man etwas liefern, und es war schon die Faulheit. Der letzte Versuch war kexi unter FreeBSD sie anscheinend in mysql mir hat (oder nicht, непомню) hinübergeworfen, aber hier verzichtete sie es, zu machen und fiel. про попытке запуска прога выпадала с исключением, ещё бы ведь я почему-то решил что будет лучше если поставить 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 мне перекинула(или нет, непомню), но тут она отказывалась это делать и падала.
Уторо die Abende мудренее. Уторо вечера мудренее.
Man musste sofort php nicht выпендриваться stellen, ах ja noch musste man den Treiber odbcmysql schwingen und, stimmen, aber es ist das Kleingeld. скриптик einfachen nichts kompliziert Надо было сразу поставить 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')");
}
?>
?> |
Und ich starte von der Sicheren прогу, und sie mir begehen Sie den Wald, es gibt keine Tabelle RELATION, wie so? Sie gibt es ich sage (also, ich habe mich noch nicht gewöhnt dass das Register bedeutet), ich umbenenne die Tabelle in RELATION gut, und es gibt sie mir der Tabelle Relation nicht, ах du су … = worin делат прогу in винде der Gruppe bedeutet der Mensch. Allen zum einheitlichen Register übersetzt, hat java allen aufgegessen und hat begonnen zu arbeiten),и вот я с надежной запускаю прогу, а она мне идите лесом, таблицы RELATION нету, как так? есть она говорю(ну не привык я ещё что регистр имеет значение), ладно переименовываю таблицу в RELATION, а она мне нету таблицы Relation, ах ты су… @= во что значит делат прогу в винде группе человек. Переведя всё к единому регистру, java всё скушала и начала работать)
30Jul 200830Jul 2008
Die frischen Kommentare
Свежие комментарии