Sunday, 12 October 2014

How to export data from Oracle 12c database using python 3.4


oracle tutorial
Python is an indent based language. Does not contain any begin or end like if / end if, loop / end loop. Beginning of scope is in hanging indent and the entire scope is indented.





Like
>>if(codition)
>>     staterment 
>>     staterment 

Just look into the indent for the statement below if condition.

Now about oracle client library in python.
You can download oracle client cx_Oracle  from here : https://pypi.python.org/pypi/cx_Oracle/5.1.3.

cx_Oracle-5.1.3-11g.win-amd64-py2.7.exe (md5) MS Windows installer 2.7 2014-05-25 323KB
cx_Oracle-5.1.3-11g.win-amd64-py3.3.exe (md5) MS Windows installer 3.3 2014-05-25 322KB
cx_Oracle-5.1.3-11g.win-amd64-py3.4.exe (md5) MS Windows installer 3.4 2014-05-25 322KB
cx_Oracle-5.1.3-11g.win32-py2.7.exe (md5) MS Windows installer 2.7 2014-05-25 288KB
cx_Oracle-5.1.3-11g.win32-py3.3.exe (md5) MS Windows installer 3.3 2014-05-25 283KB
cx_Oracle-5.1.3-11g.win32-py3.4.exe (md5) MS Windows installer 3.4 2014-05-25 282KB
cx_Oracle-5.1.3-12c.win-amd64-py2.7.exe (md5) MS Windows installer 2.7 2014-05-25 323KB
cx_Oracle-5.1.3-12c.win-amd64-py3.3.exe (md5) MS Windows installer 3.3 2014-05-25 322KB
cx_Oracle-5.1.3-12c.win-amd64-py3.4.exe (md5) MS Windows installer 3.4 2014-05-25 322KB
cx_Oracle-5.1.3-12c.win32-py2.7.exe (md5) MS Windows installer 2.7 2014-05-25 288KB
cx_Oracle-5.1.3-12c.win32-py3.3.exe (md5) MS Windows installer 3.3 2014-05-25 283KB
cx_Oracle-5.1.3-12c.win32-py3.4.exe (md5) MS Windows installer 3.4 2014-05-25 282KB
cx_Oracle-5.1.3.tar.gz (md5) Source 2014-05-25 102KB

Just choose according to your version of python installed.

Install it in your machine if you are using Windows 32 bit download win32-py else if you are using Windows 64 bit  download win-amd64-py.

Here is the sample code below which will help you to connect to Oracle and export csv data.

#---------------------------------------------------------------------------------------------------
import cx_Oracle
# con = cx_Oracle.connect('username/password@[ipaddress or hostname]/SID')
# for example con = cx_Oracle.connect('scott/tiger@127.0.0.1/orcl')

# Above 2 lies are format of connection string and sample connection string.
# Below is the actual connection string I have used. orcl.localdomain is the service name you have configured with net config assistant in oracle databsae server.

con = cx_Oracle.connect('hr/hr@192.168.0.109/orcl.localdomain')
cur = con.cursor()
cur.execute('select section_code,section_name from section_master order by 2')
# using inbuilt open function to create new /open existing file for writing
file = open("file.csv", "w")
for row in cur:
# row[0] and row[1] where 0 and 1 are index of row cursor.
file.write(row[0] + ',' + row[1] + '\n')
#closing all opened objects
file.close()
cur.close()
con.close()
print("File successfully exported")

#---------------------------------------------------------------------------------------------------

Please comment if you have any queries.
You can also find video tut0rialfor this lesson in https://www.youtube.com/watch?v=85WoKxiEC-E
Also you can subscribe to my youtube channel https://www.youtube.com/subhro190776

No comments: