When working with Oracle databases in Python, a common approach is to use SQLAlchemy as the ORM or query layer and cx_Oracle as the underlying database driver. One of the most common stumbling blocks is getting the connection string syntax exactly right.
This post walks through the correct oracle+cx_oracle connection string formats, with examples for the most common Oracle connection scenarios.
Basic Connection String Format
When using SQLAlchemy with cx_Oracle, the connection URL starts with:
oracle+cx_oracle://
From there, the full format depends on whether you connect using a service name, SID, or TNS alias.
Connecting with a Service Name (Recommended)
Most modern Oracle databases use a service name rather than a SID.
Syntax
oracle+cx_oracle://username:password@host:port/?service_name=SERVICE
Example
from sqlalchemy import create_engine
engine = create_engine(
“oracle+cx_oracle://desi:tiger@dbserver.example.com:1521/?service_name=ORCLPDB1”
)
Connecting with a SID
Some legacy systems still require a SID.
Syntax
oracle+cx_oracle://username:password@host:port/?sid=SID
Example
engine = create_engine(
“oracle+cx_oracle://desi:tiger@dbserver.example.com:1521/?sid=ORCL”
)
Using a TNS Alias
If your Oracle client is configured with a tnsnames.ora file and the appropriate environment variables (ORACLE_HOME or TNS_ADMIN) are set, you can connect using a TNS alias.
Syntax
oracle+cx_oracle://username:password@TNS_ALIAS
Example
engine = create_engine(
“oracle+cx_oracle://desi:tiger@PRODDB”
)
This approach is often useful in enterprise environments where connection details are centrally managed.
Handling Special Characters in Passwords
Because SQLAlchemy connection strings are URLs, special characters in passwords (@, /, :, etc.) must be URL-encoded.
Example
from urllib.parse import quote_plus
password = quote_plus(“p@ss/w:rd”)
engine = create_engine(
f”oracle+cx_oracle://desi:{password}@dbserver:1521/?service_name=ORCLPDB1″
)
Failing to encode the password is a common cause of confusing connection errors.
Important Notes
- cx_Oracle requires Oracle Client libraries, such as Oracle Instant Client.
- SQLAlchemy automatically constructs the underlying Oracle DSN for you based on the connection URL.
- For new projects, Oracle recommends the newer oracledb driver (which supports a thin mode without client libraries), but cx_Oracle remains widely used and supported in existing systems.
Final Thoughts
Getting the Oracle connection string right saves a lot of debugging time. Whether you’re using a service name, SID, or TNS alias, the key is understanding how SQLAlchemy maps the URL into an Oracle DSN and ensuring credentials are properly encoded.
Once that’s in place, connecting to Oracle with Python becomes straightforward and reliable.
How to fix Lawson RQC Account Cost Capped
Articles, Frontpage Article, NewsYou may sometimes find that your account cost is capped or budget exceeded, causing an error in Lawson RQC. Refer to these simple and easy steps to learn how to fix Lawson RQC Account Cost Capped.
In RQC (Lawson Requisition Center), the cost is capped at 502.86 as shown in the screen shot below.
To adjust this, in the Lawson portal, go to RQ04 and Inquire on the Requester.
Then set these two flags to “Yes” to allow overriding costs (see screen shot below).
That is all there is to it! Cap should be lifted now in Requisition Center for the requester.
The Next Era of ERP Will Look Nothing Like the Last One
NewsThe enterprise resource planning (ERP) landscape is entering a period of significant change, driven by artificial intelligence (AI), automation, and the growing demand for business agility. In a recent article from Solutions Review by writer, editor and analyst William Jepma, it argues that future ERP systems will be far more intelligent, connected, and adaptable than the platforms organizations have relied on for decades. A key theme of the article is the shift away from traditional ERP systems that primarily served as systems of record. The next generation of ERP is expected to function as a system of intelligence, using AI and automation to provide recommendations, streamline workflows, and support real-time decision-making across the enterprise. Jepma also highlights the move toward more modular and composable architectures. Rather than relying on large, monolithic platforms, organizations are increasingly adopting flexible ecosystems that allow them to integrate specialized applications and services while maintaining a connected data foundation. This approach helps businesses respond more quickly to changing market conditions and evolving customer expectations. Another major takeaway is the growing importance of data quality and governance. As AI becomes more deeply embedded in ERP processes, organizations will need accurate, trusted data to generate reliable insights and automate decisions effectively. Without strong data foundations, even the most advanced technologies may fail to deliver meaningful business value. Jepma also suggests that ERP implementations will become more focused on continuous evolution rather than large-scale, once-a-decade transformation projects. Businesses will increasingly adopt incremental improvements, cloud-based innovation, and AI-driven capabilities as part of an ongoing modernization strategy. Moreover, the future of ERP is not simply about managing transactions. It is about creating intelligent, adaptable platforms that help organizations make faster decisions, automate complex processes, and respond to change with greater speed and confidence.
For Full Article, Click Here
Weekly Patch Notification: July 4, 2026
Articles, Frontpage Article, PatchesAI-accelerated ERP transformation requires context
NewsArtificial Intelligence (AI) is helping organizations accelerate enterprise resource planning (ERP) transformation, but speed alone doesn’t guarantee success. In an article from Diginomica, authors Kerry Brown and Patrick Thompson argue that while AI can automate many aspects of ERP modernization, it cannot replace a deep understanding of how a business actually operates. The article explains that AI-powered migration tools can streamline tasks such as data mapping, validation, and system analysis, reducing the time and effort required for ERP projects. However, these tools often lack the operational context needed to understand how processes, teams, and systems work together across the organization. As a result, businesses risk carrying inefficient processes and technical debt into their new ERP environment. A key theme is the importance of an operational context layer—a framework that connects data, workflows, systems, and business objectives. According to the authors, this context helps organizations make smarter transformation decisions rather than simply automating existing processes. The article also highlights the growing role of AI agents in ERP modernization. These agents can assist with identifying inefficiencies, supporting process redesign, and monitoring migration progress. However, their effectiveness depends on access to accurate business context and governance. Brown and Thompson conclude that successful ERP transformation requires more than AI-driven automation. Organizations that combine AI capabilities with a clear understanding of their business processes are more likely to reduce complexity, avoid migrating legacy problems, and achieve meaningful long-term value from their ERP investments.
For Full Article, Click Here
Connecting to Oracle with SQLAlchemy and cx_Oracle
Articles, Frontpage Article, NewsWhen working with Oracle databases in Python, a common approach is to use SQLAlchemy as the ORM or query layer and cx_Oracle as the underlying database driver. One of the most common stumbling blocks is getting the connection string syntax exactly right.
This post walks through the correct oracle+cx_oracle connection string formats, with examples for the most common Oracle connection scenarios.
Basic Connection String Format
When using SQLAlchemy with cx_Oracle, the connection URL starts with:
oracle+cx_oracle://
From there, the full format depends on whether you connect using a service name, SID, or TNS alias.
Connecting with a Service Name (Recommended)
Most modern Oracle databases use a service name rather than a SID.
Syntax
oracle+cx_oracle://username:password@host:port/?service_name=SERVICE
Example
from sqlalchemy import create_engine
engine = create_engine(
“oracle+cx_oracle://desi:tiger@dbserver.example.com:1521/?service_name=ORCLPDB1”
)
Connecting with a SID
Some legacy systems still require a SID.
Syntax
oracle+cx_oracle://username:password@host:port/?sid=SID
Example
engine = create_engine(
“oracle+cx_oracle://desi:tiger@dbserver.example.com:1521/?sid=ORCL”
)
Using a TNS Alias
If your Oracle client is configured with a tnsnames.ora file and the appropriate environment variables (ORACLE_HOME or TNS_ADMIN) are set, you can connect using a TNS alias.
Syntax
oracle+cx_oracle://username:password@TNS_ALIAS
Example
engine = create_engine(
“oracle+cx_oracle://desi:tiger@PRODDB”
)
This approach is often useful in enterprise environments where connection details are centrally managed.
Handling Special Characters in Passwords
Because SQLAlchemy connection strings are URLs, special characters in passwords (@, /, :, etc.) must be URL-encoded.
Example
from urllib.parse import quote_plus
password = quote_plus(“p@ss/w:rd”)
engine = create_engine(
f”oracle+cx_oracle://desi:{password}@dbserver:1521/?service_name=ORCLPDB1″
)
Failing to encode the password is a common cause of confusing connection errors.
Important Notes
Final Thoughts
Getting the Oracle connection string right saves a lot of debugging time. Whether you’re using a service name, SID, or TNS alias, the key is understanding how SQLAlchemy maps the URL into an Oracle DSN and ensuring credentials are properly encoded.
Once that’s in place, connecting to Oracle with Python becomes straightforward and reliable.
Your ERP Has a Strategy Problem, Not a Payments Problem
NewsPayments are often blamed for operational inefficiencies, but the real issue may lie deeper within an organization’s enterprise resource planning (ERP) strategy. A recent article from ERP Today argues that many businesses focus on optimizing payment processes while overlooking the broader ERP and operational challenges that create friction in the first place. The article explains that payment bottlenecks are frequently symptoms of disconnected processes, fragmented data, and poorly aligned workflows rather than shortcomings in payment technology itself. When ERP systems lack visibility across finance, procurement, inventory, and operations, organizations often experience delays, reconciliation challenges, and inefficiencies that surface during the payment process. A key theme is the need to view payments as part of a larger business workflow rather than a standalone function. The article suggests that organizations achieve greater value when they focus on improving end-to-end processes, ensuring data flows seamlessly between systems, and creating stronger alignment between operational and financial activities. The piece also highlights the growing importance of real-time visibility and decision-making. Modern ERP environments should provide organizations with timely insights into cash flow, supplier relationships, purchasing activity, and financial performance. Without that visibility, even the most advanced payment solutions may fail to address underlying business challenges. Ultimately, businesses should shift their focus from isolated payment optimization to broader ERP strategy and process orchestration. Organizations that improve data quality, streamline workflows, and align technology with business objectives are more likely to achieve operational efficiency, stronger financial control, and better long-term outcomes.
For Full Article, Click Here
How To Avoid The Common Headaches In Software Migration
NewsSoftware and system migrations are often necessary for modernization, but they frequently come with disruption, complexity, and organizational friction. In an article from Forbes Technology Council member and CEO of Connecting Software Thomas Berndorfer, he explains that most migration challenges are less about technology and more about people, processes, and planning. A key theme in the article is that migrations fail when organizations underestimate complexity and interdependencies across systems. Modern environments often include dozens of SaaS tools, legacy applications, and integrations across departments, meaning even small changes can create unexpected ripple effects across the business. Berndorfer also highlights the human side of migration as one of the biggest risk factors. Employees may resist new systems, fall back on “shadow IT,” or lose productivity during transitions if communication and training are not handled effectively. Without clear buy-in, even technically successful migrations can struggle operationally. To address this, he points to the importance of communication, planning, and phased approaches. Rather than forcing abrupt change, organizations can reduce friction by allowing coexistence between systems during transition periods. This enables teams to continue working in familiar environments while data and processes are gradually migrated in the background. Ultimately, successful software migration depends on balancing technical execution with organizational readiness. Companies that prioritize alignment, communication, and realistic transition strategies are far more likely to avoid disruption and achieve long-term success.
For Full Article, Click Here
Turn user monitoring on in ISS
NewsYou can use the user monitoring administrative dashboard to turn monitoring on and off.
From the security administration dashboard, select Configuration and then under the User Monitoring group, select Configure Monitoring.
You will be on the User Monitoring – Configure Monitoring page.
Weekly Patch Notification: June 27, 2026
Articles, Frontpage Article, PatchesIs AI Crippling ERP?
NewsAI (artificial intelligence) is transforming ERP (enterprise resource planning) systems, but organizations must be careful not to let automation replace critical thinking and human expertise. In an article from Connected World by Peggy Smedley, the author explores whether businesses are becoming too dependent on AI-driven tools within their ERP environments. Smedley argues that AI is not inherently problematic. Instead, challenges arise when organizations rely too heavily on automated recommendations without understanding the business context behind them. As ERP systems become more intelligent, there is a risk that users may trust AI outputs without questioning assumptions, data quality, or potential blind spots. A key theme is the increasing complexity facing manufacturers and other ERP-dependent businesses. Supply chain disruptions, workforce challenges, and evolving customer demands require faster decision-making, making AI-powered insights highly valuable. However, the article stresses that AI should support decision-making rather than replace human judgment. Smedley also highlights the importance of user adoption and governance. Successful AI initiatives require employees to understand how the technology works, when to trust it, and when human intervention is necessary. Organizations that balance innovation with oversight are more likely to see meaningful results. Ultimately, Smedley concludes that AI is not crippling ERP. Rather, its effectiveness depends on thoughtful implementation, strong governance, and maintaining the right balance between automation and human expertise.
For Full Article, Click Here