我想使用Sahi 5.0 OS API连接到Oracle数据库:
var $db = _getDB($driver, $jdbcurl, $username, $password)
或
var $db = _getDB("oracle.jdbc.driver.OracleDriver",
"jdbc:oracle:thin:@dbserver:1521:sid",
"username", "password");
我已下载 classes12.jar 和 ojdbc14.jar 并将其放入 C:\ Users \ Username \ sahi \ extlib \ db
我已经添加了 dashboard.bat :
set SAHI_CLASS_PATH=%SAHI_HOME%\lib\sahi.jar;
%SAHI_HOME%\extlib\rhino\js.jar;%SAHI_HOME%\extlib\apc\commons-codec-1.3.jar;
%SAHI_HOME%\extlib\db\ojdbc14.jar;%SAHI_HOME%\extlib\db\classes12.jar
并在 dashboard.sh :
SAHI_CLASS_PATH=$SAHI_HOME/lib/sahi.jar:$SAHI_HOME/extlib/rhino/js.jar:
$SAHI_HOME/extlib/apc/commons-codec-1.3.jar:
$SAHI_HOME/extlib/db/ojdbc14.jar:$SAHI_HOME/extlib/db/classes12.jar
但是,如果我尝试使用第一种方法来使用_getDB,我会得到以下结果:
Java constructor for "net.sf.sahi.plugin.DBClient"
with arguments "string,string,string,string" not found.
当我使用第二个时,我有这个:
Java constructor for "net.sf.sahi.plugin.DBClient"
with arguments "string,string,java.util.Properties" not found.
如何连接我连接到Oracle DB并使用$ db.select和$ db.update等方法?
我在使用JDK 1.8的Windows 7上工作
答案 0 :(得分:0)
我想我可以帮助你。 尝试使用Sahi OS连接数据库时也遇到错误。
https://sahipro.com/docs/sahi-apis/database-apis.html页面中显示的示例很有用,但我相信SAHI Pro还有更多内容。 因为我上面说过了吗?
我尝试了很多方法,但没有加载数据库。另一个问题是我试图插入而不是恢复数据。
我开始分析获得的错误(和你的一样),然后发现SAHI API,这个类'net.sf.sahi.plugin.DBClient',类中有构造函数方法,_ getDb函数( )调用启动对象。
结论是它在Github上找到了SAHI API,并在课堂上进行了检查。
没有方法构建器,此功能对SAHI OS不起作用。
所以我们必须使用JAVA语言的功能来做到这一点,例如:https://sahipro.com/docs/sahi-apis/database-apis.html#Accessing%20databases%20directly
我修改了这个功能(就像我说的,我是在数据库中输入的)我的需要,它被插入数据库和vualá!!!!它奏效了!
我使用了SQLite(SAHI文档不包含任何示例)
为了澄清,我创建的函数将是:
function setRawDB(driverName,jdbcurl,sqlQuery){
java.lang.Class.forName(driverName);
var connection = java.sql.DriverManager.getConnection(jdbcurl);
var stmt = connection.createStatement();
var query = stmt.executeUpdate(sqlQuery);
stmt.close();
// sahi auto commit
//connection.commit();
connection.close();
}
然后我开始使用自动脚本(在我刚刚在页面上直接使用测试之前),直接保存在本地数据库中。
只有这样才能使用。