###前提・実現したいこと
初投稿です。
python3でOracleDatabase11gアクセスしたいです。
普段はsqlplusを使って接続しています。
学校に立てられているOracleサーバにアクセスしたいのですが、文字コードなどのエラーが出ました。
そもそも接続の方法が間違っているのか文字コードの設定が間違っているかなど全く分かりません。
OracleもPythinもまだ始めたばかりです。
できるだけ詳しくお手柔らかにお願いします。
※そもそものやり方が違う場合は初めから教えてください…。
conn = cx_Oracle.connect('ユーザ名','パスワード','192.168.XXX.XX/orcl1')
より下はまだ途中なので間違っているかもしれません。
パソコンのユーザ名は半角英語です。
###発生している問題・エラーメッセージ
utf-8 utf-8 utf-8 utf-8 Traceback (most recent call last): File "test.py", line 11, in <module> connection = cx_Oracle.connect('XXXXXX','XXXXXX','192.168.XXX.XX/orcl1') UnicodeDecodeError: 'utf-8' codec can't decode bytes in position 125-126: invalid continuation byte
###該当のソースコード
python
1# coding: utf-8 2import cx_Oracle 3import sys 4 5# 文字コードとかを調べる? 6print(sys.getdefaultencoding()) 7print(sys.stdin.encoding) 8print(sys.stdout.encoding) 9print(sys.stderr.encoding) 10 11# ユーザ名とパスワードは半角英数字です。 12conn = cx_Oracle.connect('ユーザ名','パスワード','192.168.XXX.XX/orcl1') 13cursor = conn.cursor() 14cursor.execute("select * from REGIONS") 15 16for row in cursor: 17 print(row) 18
###試したこと
コマンドプロンプトでchcp
を使って文字コードを変更しました。
chcp 65001
で試したのですが結果は変わらなかったです。
ファイルの文字コードをshift_jisで保存して実行しましたが、結果は変わらなかったです。
###補足情報(言語/FW/ツール等のバージョンなど)
pythonのバージョン
Python 3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)] on win32
sqlplus Oracleサーバ
C:\Users\username>sqlplus ユーザ名/パスワード@192.168.XXX.XX/orcl1 SQL*Plus: Release 11.1.0.6.0 - Production on X YY月 7 HH:MM:SS YYYY Copyright (c) 1982, 2007, Oracle. All rights reserved. Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options に接続されました。 >SQL
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。