使用DDL命令使用iBatis for Oracle创建用户

时间:2014-01-20 12:36:38

标签: oracle ibatis ddl

我试图使用iBatis为Oracle数据库执行DDL命令。 我想使用iBatis执行以下查询,我应该如何执行。我正在使用struts 1.2进行编码。

CREATE USER USER1..;

我尝试过使用iBatis的元素,但它不起作用。 请有人为我提供快速解决方案。

1 个答案:

答案 0 :(得分:0)

iBatis不正式支持DDL,但仍然多次使用iBatis成功执行。 我已经采用了一个简单的DDL命令来创建用户,该命令在Oracle中正确运行。

CREATE USER MYUSER IDENTIFIED BY PASSWORD;

然后在iBatis中使用了映射语句。 <statement>映射语句可以包含任何SQL语句。我从this链接引用了iBatis的映射语句 然后我用创建用户DDL为iBatis创建了语句,并将参数类作为UserToCreate传递。

<statement id="createUser" parameterClass="UserToCreate">
   CREATE USER #userName# IDENTIFIED BY PASSWORD
</statement>

UserToCreate.java 文件是一个bean,其中包含与要创建的用户相关的数据。

public class UserToCreate{

    private String userName;

    // Any other field variable

    //Getter Setter methods
}

现在调用Create User iBatis语句只需编写使用代码:

UserToCreate user = new UserToCreate();
user.setName("MYUSER"); 

// sqlMap is an object of ibatis SqlMapClient
sqlMap.update("createUser", user);

这将创建一个新的Oracle用户,由变量userName中的用户名指定。