sql >> Databasteknik >  >> RDS >> Oracle

cx_Oracle ansluter inte när du använder SID istället för tjänstens namn på anslutningssträngen

I ett liknande scenario kunde jag ansluta till databasen genom att använda cx_Oracle.makedsn() för att skapa en dsn sträng med en given SID (istället för tjänstens namn):

dsnStr = cx_Oracle.makedsn("oracle.sub.example.com", "1521", "ora1")

Detta returnerar något i stil med

(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle.sub.example.com)(PORT=1521)))(CONNECT_DATA=(SID=ora1)))

som sedan kan användas med cx_Oracle.connect() för att ansluta till databasen:

con = cx_Oracle.connect(user="myuser", password="mypass", dsn=dsnStr)
print con.version
con.close()


  1. SQLite datatyper

  2. Hitta nästa tillgängliga ID i MySQL

  3. MySQL - Hur söker man efter exakt ordmatchning med LIKE?

  4. SQL CASE-sats