1、不要使用System等系统用户连接ODBC,Oracle不支持
2、创建Oracle新用户并赋予权限:
Create User lruser Identified by lrpassword;
GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO lruser;
3、创建表并插入数据:
create table students(
stuNo VARCHAR2(256) not null,
stuName VARCHAR2(256),
stuSex VARCHAR2(10)
);
alter table students add constraint stuNo_PK primary key (stuNo) using index;
select * from students;
insert into students values('001','susan','girl');
insert into students values('002','Tom','boy');
insert into students values('003','Jessica','girl');
insert into students values('004','Marry','girl');
insert into students values('005','Shine','girl');
insert into students values('006','Lucky','boy');
insert into students values('007','Peter','boy');
insert into students values('008','Sue','boy');
insert into students values('009','Kiss','girl');
insert into students values('010','Pop','boy');
4、创建数据源
管理工具- >数据源,创建数据源,步骤5中的
String dbUrl = "jdbc:odbc:Oracle_ODBC";其中Oracle_ODBC就是创建的本地数据源
5、在LoadRuner Vugen中选择Java Vuser协议,创建脚本:
import java.io.*;
import lrapi.lr;
import java.sql.*;
public class Actions
{
int sum=0;
public int init() throws Throwable {
return 0;
}//end of init
public int action() throws Throwable {
try{
//定义了数据库连接串
String dbUrl = "jdbc:odbc:Oracle_ODBC";
//数据库的用户名
String user = "lruser";
//数据库的用户口令
String password = "lrpassword";
//加载jdbc-odbc bridge驱动程序
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//与url指定的数据源建立连接
Connection conn = DriverManager.getConnection(dbUrl, user, password);
//采用Statement进行查询
//插入LoadRunner的事务lr_select_data_trans
lr.start_transaction("lr_select_data_trans");
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery("SELECT stuNo,stuName,stuSex FROM students;");
lr.message("\t"+"stuNo"+"\t"+"stuName"+"\t"+"stuSex"+"\n");
//函数输出表的各个字段名字
while(rs.next())
{
lr.message("\t"+rs.getString(1)
+"\t"+rs.getString(2)
+"\t"+rs.getString(3)
+"\n");
sum=sum+1;
}
rs.close();
stat.close();
conn.close();
lr.message("Sum="+sum);
// lr_select_data_trans事务结束
lr.end_transaction("lr_select_data_trans ",lr.AUTO);
}catch(Exception e){
e.printStackTrace();
System.out.println("Test Failed");
}
return 0;
}//end of action
public int end() throws Throwable {
return 0;
}//end of end
}
6、执行脚本