ODBC-Verbindung zu FileMaker 11 Server Advanced mit Python 3

Umgebung

Server

FileMaker 11 server Advanced

Klient

Visual Studio Community 2015 (Python-Tools installiert) Anaconda 32bit (Aufgrund des odbc-Treibers muss es 32bit sein. 32bit und 64bit können nebeneinander existieren, wenn sie zum Zeitpunkt der Installation entwickelt wurden.)

https://www.continuum.io/downloads

Ich habe mich auf diese Person bezogen. http://qiita.com/kyo-bad/items/75d88ce77660e3fa158c

Aufbau

FileMakerServer -FileMaker Server ist eine erweiterte Version (ODBC-Verbindung ist in der normalen Version nicht möglich) ・ Es wird davon ausgegangen, dass auch die ODBC-Einstellungen und Freigabeeinstellungen für die Zieldatei festgelegt sind.

Python3 -Verwendet Anaconda 32bit (da in FileMaker 11 nur 32bit ODBC-Treiber vorhanden waren)

・ Wenn Anaconda 64bit als Hauptgerät installiert ist Werkzeuge (T) -> Optionen (O) ...   Python Tools->Environment Options Erstellen Sie eine neue 32-Bit-Einstellung mit Projekt (P) -> (Projektname) Eigenschaften (E) ...   General -> Interpreter: Nehmen Sie die vorgenommenen Einstellungen vor.

ODBC -Installieren Sie mit dem in FileMaker enthaltenen ODBC-Installationsprogramm

http://filemaker-jp.custhelp.com/app/answers/detail/a_id/9170/~/filemaker-11-installing -odbc- und -jdbc- client drivers

http://filemaker-jp.custhelp.com/app/answers/detail/a_id/9974/~/64-bit version -windows-about -odbc- Verbindung in der Umgebung

Code

Erfolg

Installieren Sie pypyodbc als vorläufige Vorbereitung.

Eingabeaufforderung


%windir%\system32\cmd.exe "/K" "C:\Anaconda-Installationsziel\Scripts\activate.bat" "C:\Anaconda-Installationsziel"
pip install pypyodbc

Python3


#!/usr/bin/env python
# -*- coding: utf-8 -*-
###coding: utf-Teil 8 hängt von der Kodierung des Dokuments ab
###Datei(F)->Erweiterte Einstellungen für Speicheroptionen(V)...
###Die Dokumentcodierung kann mit geändert werden
###In diesem Fall "Unicode"(UTF-8 Keine Unterschrift)-Codepage 65001 "
###SHIFT-Für JIS cp932
import pypyodbc

def pypy():
    cnn = pypyodbc.connect('DRIVER={FileMaker ODBC};SERVER=192.168.XXX.XXX:2399;UID=USER_NAME;PWD=PASSWORD;DATABASE=Dateimacher.fp7')
    cur = cnn.cursor()
    #Bei japanischen Feldern müssen Sie diese immer in doppelte Anführungszeichen setzen.
    cur.execute("SELECT \"ID\",\"Name\" from \"Tabellenname\" WHERE \"ID\" =Nummer")
    rows = cur.fetchall()
    for row in rows:
        print(row[1])
    cur.close()
    cnn.close()

if __name__ == "__main__":
    pypy()

-Der Zeichencode kann utf-8 oder cp932 sein, stimmt jedoch mit der # - * - Codierung überein: utf-8 - * - Teile.

Fehler

Vielleicht habe ich gerade einen Fehler in meinen Einstellungen gemacht, aber das Programm hat mit den folgenden Einstellungen nicht funktioniert. Besonders wenn Japaner involviert sind, wird es schwierig zu bestehen. pyodbc

Python3


import pyodbc

Ich konnte mich mit pyodbc.connect verbinden. Wenn cursor.execute (Abfrage) auf jeden Fall ein japanisches Feld enthält 'utf-8' codec can't decode byte 0x8e in position 0: invalid start byte Konnte aufgrund eines Fehlers wie (Dies ist auch dann der Fall, wenn Sie mit .encode ('utf-8') usw. codieren oder decodieren oder die Codierung des Dokuments ändern) nicht erhalten werden. ADO

Python


import win32com.client
#DBConnection=win32com.client.Dispatch('ADODB.Connection')        
#DBConnection.Open(ConnectionString) 

Der Code wird übergeben, aber XXX.Fields.Item (i) .Value nimmt keine Zeichenfolgenwerte auf

PyFileMaker Python3 wird nicht unterstützt

Recommended Posts

ODBC-Verbindung zu FileMaker 11 Server Advanced mit Python 3
ODBC-Zugriff auf SQL Server von Linux mit Python
Lokaler Server mit Python
Stellen Sie mit Python eine Verbindung zu BigQuery her
Stellen Sie mit Python eine Verbindung zu Wikipedia her
Post to Slack mit Python 3
UDP gleichzeitige Verbindung mit Python
Schalten Sie Python mit Alternativen auf 2.7 um
Schreiben Sie mit Python in csv
Einfacher HTTP-Server mit Python
Verbindungspooling mit Python + MySQL
Bildschirm und geteilter Bildschirm mit Python- und SSH-Anmeldung am Remote-Server
Python: So verwenden Sie Async mit
Link, um mit Python zu beginnen
[Python] Mit Python in eine CSV-Datei schreiben
Schön dich mit Python zu treffen
Versuchen Sie, Facebook mit Python zu betreiben
Ausgabe in eine CSV-Datei mit Python
Konvertieren Sie die Liste mit Python in DataFrame
MP3 → WAV-Konvertierung mit Python
Schwanzrekursion mit Python2 durchführen
Erste Schritte mit Python
Was tun mit PYTHON Release?
So berechnen Sie das Datum mit Python
Mit Python 3 einfach auf Twitter posten
Ich möchte mit Python debuggen
Datenbanktabellen mit CSV extrahieren [ODBC-Verbindung von R und Python]
Laden Sie WAV-Dateien per FTP mit Python auf X-Server hoch und laden Sie sie herunter
Versuchen Sie, Farbfilme mit Python zu reproduzieren
Versuchen Sie, sich mit Python bei qiita anzumelden
Ändern Sie die Python 64-Bit-Umgebung mit Anaconda in eine 32-Bit-Umgebung
Englische Spracherkennung mit Python [Rede zu Text]
Konvertieren Sie Memos sofort mit Python 2to3
HTML-Mail mit Bild zum Senden mit Python
Ich habe versucht, mit einem Remote-Server über Socket-Kommunikation mit Python zu kommunizieren.
[In-Database Python Analysis Tutorial mit SQL Server 2017]
Memo, um nach KPI mit Python zu fragen
Python nur mit Hallo, Welten zu erinnern
Geben Sie Farbzeichen mit Python zu hübsch aus
Einführung in das Auffüllen von Python-Bildern Auffüllen von Bildern mit ImageDataGenerator
Python-Protokoll mit GAE an die Konsole ausgeben
Datenintegration von der Python-App unter Linux zu Amazon Redshift mit ODBC
Konvertieren Sie Excel-Daten mit Python in JSON
Konvertiere Hiragana mit Python (Beta) in Romaji
Fraktal zum Erstellen und Spielen mit Python
Senden Sie E-Mails mit mailx an einen mit Python eingerichteten Dummy-SMTP-Server.
Ich wollte ABC160 mit Python lösen
Stellen Sie mit Python in Docker eine Verbindung zu MySQL her
So arbeiten Sie mit BigQuery in Python
[Einführung in Python] Verwenden wir foreach mit Python
Push-Benachrichtigung vom Python-Server an Android
Einzelpixel-Kamera zum Erleben mit Python
Ich möchte Protokolle mit Python analysieren
Wie man einen Taschentest mit Python macht
Ich möchte mit aws mit Python spielen
So zeigen Sie Python-Japanisch mit Lolipop an