1.根据oracle(2-Tier)协议;需本机器配置TNS:链接标识符
#include"lrd.h"
static LRD_INIT_INFO InitInfo={LRD_INIT_INFO_EYECAT};
static LRD_DEFAULT_DB_VERSION DBTypeVersion[]={{LRD_DBTYPE_NONE,LRD_DBVERSION_NONE}};
static void FAR * OraEnv1;
static void FAR * OraSvc1;
static void FAR * OraSrv1;
static void FAR * OraSes1;
static void FAR * OraStm1;
static void FAR * OraDef1;
unsigned long rownum;
vuser_init()
{
lrd_init(&InitInfo, DBTypeVersion);
lrd_initialize_db(LRD_DBTYPE_ORACLE, 2, 0);
lrd_env_init(LRD_DBTYPE_ORACLE, &OraEnv1, 0, 0);
lrd_ora8_handle_alloc(OraEnv1, SERVER, &OraSrv1, 0);
lrd_ora8_handle_alloc(OraEnv1, SVCCTX, &OraSvc1, 0);
lrd_ora8_handle_alloc(OraEnv1, SESSION, &OraSes1, 0);
//lrd_ora8_handle_alloc(OraEnv1, SESSION, &OraSes2, 0);
//lrd_server_attach(OraSrv1, "qa70/orcl", 9, 0, 0);
lrd_server_attach(OraSrv1, "orcl", -1, 0, 0);//lrd_server_attach(OraSrv1, "orcl", 4, 0, 0)
lrd_ora8_attr_set_from_handle(OraSvc1, SERVER, OraSrv1, 0, 0);
lrd_ora8_attr_set(OraSes1, USERNAME, "system", -1, 0);//lr_decrypt("58b3e02f8ba0e4201c2c")
//lrd_ora8_attr_set(OraSes1, PASSWORD, lr_decrypt("5487fff63e812b81"), -1, 0);
lrd_ora8_attr_set(OraSes1, PASSWORD, "password", -1, 0);
lrd_ora8_attr_set_from_handle(OraSvc1, SESSION, OraSes1, 0, 0);
lrd_session_begin(OraSvc1, OraSes1, 1, 0, 0);
lrd_ora8_handle_alloc(OraEnv1, STMT, &OraStm1, 0);
return 0;
}
//Action
Action()
{
//这里写上你的sql语句
lrd_ora8_stmt(OraStm1,"select * from aa01 where aae140='sys';",1,0,0);
lrd_ora8_stmt(OraStm1,"select * from ry_jbxx,dz_zzxx where dz_zzxx.zzbh=ry_jbxx.RYZZBH ", 1, 32, 0);
//lr_rendezvous("querry");
lr_start_transaction("querry");
//执行定义的sql,并且将结果行数返回到rownum中
lrd_ora8_exec(OraSvc1,OraStm1,0,0,&rownum,0,0,0,0,1);
lr_end_transaction("querry", LR_AUTO);
return 0;
}
//vuser_end
vuser_end()
{
//释放连接数据库
lrd_session_end(OraSvc1, OraSes1, 0, 0);
lrd_server_detach(OraSrv1, 0, 0);
lrd_handle_free(&OraSrv1, 0);
lrd_handle_free(&OraSvc1, 0);
lrd_handle_free(&OraSes1, 0);
lrd_handle_free(&OraEnv1, 0);
}
2.根据WebServer协议;需本机器配置TNS:链接标识符
//Action
Action()
{
int NumRows=0;
int i;
//连接数据库
lr_db_connect("StepName=testConnect",
"ConnectionString=Provider=OraOLEDB.Oracle.1,Data Souce=ORCL;" "Persist Security Info =True;" "User ID=system;" "Password=password",
//"ConnectionString=Provider=OraOLEDB.Oracle.1;Data Source=TEST211; Persist Security Info=True; User ID=sj; Password=sj1234",
"ConnectionName=db_orcl",
"ConnectionType=OLEDB", LAST);
lr_start_transaction("query_1");
//查询sql:select * from lr_auto_users
NumRows=lr_db_executeSQLStatement("StepName=query_1", "ConnectionName=db_orcl",
"SQLStatement=select name from v$database",
"DatasetName=LrAutoUsers_Dataset", LAST);
lr_end_transaction("query_1",LR_AUTO);
lr_output_message("总共%d条数据:",NumRows);
while (i) {
}
return 0;
}
3.根据java协议;需配置1.6jdk
/*
* LoadRunner Java script. (Build: _build_number_)
*
* Script Description:
*
*/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.UUID;
import lrapi.lr;
public class Actions
{
private Connection conn;
public int init() throws Throwable {
Class.forName("oracle.jdbc.driver.OracleDriver");
//jdbc链接 classes12-10.2.0.1.0.jar//this.conn = DriverManager.getConnection("jdbc:oracle:thin:@172.16.13.228:1521:orcl", "test", "test");
//oci8链接方式ojdbc5.jar
this.conn = DriverManager.getConnection("jdbc:172.16.87.110:1521:@orcl", "system", "password");
return 0;
}//end of init
public int action() throws Throwable {
insert(this.conn);
return 0;
}//end of action
public int end() throws Throwable {
conn.close();
return 0;
}//end of end
public static void insert(Connection conn) throws SQLException {
long begin = System.currentTimeMillis();
PreparedStatement psmt = null;
try {
psmt = conn.prepareStatement("insert into t_cert (CERTSN ,subject,notbefore,notafter,ctml_name,CERTSTATUS,OLDCERTSN,ENCCERTSN, signCertEntity,encCertEntity) values (?,?,?,?,?,?,?,?,?,?)");
psmt.setString(1, "<NO1>-<NO2>-<time>-<NO2>");
psmt.setString(2, "subject");
psmt.setTimestamp(3, new Timestamp(System.currentTimeMillis()));
psmt.setTimestamp(4, new Timestamp(System.currentTimeMillis()));
psmt.setString(5, "ctml_name");
psmt.setString(6, "CERTSTATUS");
psmt.setString(7, "OLDCERTSN");
psmt.setString(8, "ENCCERTSN");
psmt.setString(9, "signCertEntity");
psmt.setString(10, "encCertEntity");
psmt.executeUpdate();
System.out.println( (System.currentTimeMillis() - begin));
System.out.println( (System.currentTimeMillis() - begin));
}
finally{
if(psmt != null) {
try{
psmt.close();
}catch(SQLException ex){
}
}
}
}
}