Thanks for your help - I now have some improvements .
I did the following:
I tried ${SQLStmt} in the JDBC sampler - but that did not work because always a
"?" was placed in front of my SQL string.
Therefore, I added a dummy-column in my SQL script file.
The file looks now:
dummy;SELECT * FROM dbc.tablesV ORDER BY 1
dummy;SELECT * FROM dbc.tablesV ORDER BY 1, 2, 3
My CSV data set config has now the following settings:
- filename: C:\JMeterCSVSQL.txt
- character set: UTF-8
- variable name: dummy,SQLStmt
- delimiter: ;
I do not use the dummy variable, but now I can execute one SQL statement which
is placed in the SQL script file.
However, there is one problem again:
Only the first SQL statement of the textfile gets executed - the others do not
get executed.
I am not sure, why JMeter does not fetch row after row of the textfile and does
not execute all statement.
The debugging info also did not show me any more information about that.
Do you have any other hints to solve this issue?
thanks
> Subject: Re: Feeding a JDBC sampler with multiple SQL statements from a SQL
> script file
> From: [email protected]
> Date: Sat, 7 Apr 2012 10:24:12 +0100
> To: [email protected]
>
> One thing, have you tried with ${SQLStmt} - ${} is the notation for how JM
> refers to variables.
>
> Apart from that, as it stands this should work. Try moving the View Results
> Tree Listener from where it is as a child of the JDBC request to the top of
> the testplan, that way you will see results for everything. Then add a Debug
> Request, that will show more information.
>
> On 7 Apr 2012, at 09:59, Wolfgang Wyremba wrote:
>
> >
> > hello,
> >
> > let my outline my current configuration below...
> >
> >>> So, is there a way to "feed" a JDBC sampler with an external file,
> >>> holding different SQL statements?
> >>
> > Yes, you can pass a variable directly into the SQL statement itself.
> > Eg. In the Query edit box, you might have something like:
> >>
> >> INSERT INTO `myDB`.`emails` (`email`) VALUES ('${myEmail}');
> >>
> >> Where ${myEmail} is a jmeter variable.
> >>
> >>>
> >>> I could find one posting in this mailling list, discussing this issue
> >>> using CSV data set configs:
> >>> http://jmeter.512774.n5.nabble.com/How-to-run-SQL-log-against-database-td525660.html
> >>>
> >>> However, I am not sure, whether this is the right solution and
> >>> additionally I could not manage to get it working.
> >>
> >>
> > Sounds like a good solution to me, there may be others, but this would
> > certainly work and actually, probably isn't all that hard. You just ahve
> > to get the CSV Dataset Config to work.
> >>
> >> What exactly is it that is causing you trouble?
> >
> > I have a working JDBC configuration and I can run a single SQL statement
> > without any problems in a JDBC sampler.
> >
> > I set up a text-file called "JMeterCSVSQL.txt" which has two SQL statements
> > - each in a line seperated with a semicolon:
> > SELECT * FROM DBC.TablesV ORDER BY 1;
> > SELECT * FROM DBC.TablesV ORDER BY 1, 2, 3;
> >
> > My CSV data set config has the following settings:
> > - filename: C:\JMeterCSVSQL.txt
> > - character set: UTF-8
> > - variable name: SQLStmt
> > - delimiter: ;
> >
> > I did not touch the other settings.
> >
> > My JDBC sampler has the following settings:
> > - Variable Name Bound To Pool: DB1 ... this is my working DB-connection
> > - Query-Type: SELECT statement
> > - Query: {SQLStmt}
> >
> > I did not touch the other settings.
> >
> > Well, this configuration does not work.
> > I always get the following JDBC Error:
> > <sample t="33" lt="33" ts="1333788631220" s="false" lb="JDBC Request"
> > rc="HY000 1074" rm="com.teradata.jdbc.jdbc_4.util.JDBCException: [Teradata
> > JDBC Driver] [TeraJDBC 13.10.00.29] [Error 1074] [SQLState HY000] Invalid
> > Escape Clause "{SQLStmt}"" tn="TG_Queries 1-1" dt="text" by="0"/>
> >
> > I
> > also tried to change the query to '{SQLStmt}' but that didn't work as well.
> > The JDBC error then is:
> > <sample t="35" lt="33" ts="1333788770333" s="false" lb="JDBC Request"
> > rc="42000 3706" rm="com.teradata.jdbc.jdbc_4.util.JDBCException: [Teradata
> > Database] [TeraJDBC 13.10.00.29] [Error 3706] [SQLState 42000] Syntax
> > error: expected something between the beginning of the request and the
> > string '{'." tn="TG_Queries 1-1" dt="text" by="0"/>
> >
> >
> > My layout of my JMeter file is:
> > Thread Group
> > JDBC Connection
> > CSV Data Set Config
> > JDBC Request
> > View Result Set in Table
> > Summary Report
> >
> >
> > So, there seem to be some small changes needed; but I am not sure what I
> > have to change to get it working.
> >
> > I hope you can give me some more hints on how to solve this issue.
> >
> > Thanks.
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>