from sqlalchemy import create_engine, text
from sqlalchemy.exc import SQLAlchemyError
USERNAME = "userdb"
PASSWORD = "passworddb"
HOST = "192.168.1.100"
PORT = "1521"
SERVICE_NAME = "XE" # atau nama service/ORACLE_SID
# format connection string untuk Oracle dengan cx_Oracle
# oracle+cx_oracle://username:password@host:port/?service_name=SERVICE
DATABASE_URL = f"oracle+cx_oracle://{USERNAME}:{PASSWORD}@{HOST}:{PORT}/?service_name={SERVICE_NAME}"
def test_connection():
try:
engine = create_engine(DATABASE_URL, echo=True)
with engine.connect() as conn:
result = conn.execute(text("SELECT sysdate FROM dual"))
for row in result:
print("Koneksi sukses, Oracle SYSDATE:", row[0])
except SQLAlchemyError as e:
print("Gagal konek ke Oracle:", str(e))
if __name__ == "__main__":
test_connection()