ВЫКЛЮЧИТЬ СКАНИРОВАНИЕ с тонким драйвером - PullRequest
0 голосов
/ 16 декабря 2010

Я использую DbUnit для заполнения тестовой базы данных тестовыми данными перед выполнением тестов.

Фрагмент моего муравьиного сценария:

<taskdef name="dbunit" classname="org.dbunit.ant.DbUnitTask" classpath="dbunit-2.2.jar" />

    <target name="load">
        <dbunit driver="oracle.jdbc.driver.OracleDriver"
            url="jdbc:oracle:thin:@//localhost/XE"
            userid="user"
            password="pass">

            <classpath>
                <pathelement location="ojdbc14-10.2.0.1.0.jar"/>
            </classpath>
            <operation type="REFRESH" src="testData.xml"/>
        </dbunit>

    

В моих тестовых данных у меня есть пара значений с & xx; ценности. Эти данные не вставляются, поскольку они интерпретируются оракулом как переменные.

Я хотел бы изменить свойство сеанса SET SCAN OFF при подключении к базе данных.

Я обнаружил, что могу передать его как параметр JVM, используя -Dparam=value. Я пытался -Dscan=off, но это не сработало.

Ответы [ 2 ]

1 голос
/ 16 декабря 2010

Вы не можете, потому что SET SCAN {OFF|ON} является командой SQL * PLUS. Возможно, уточните вашу проблему. Зачем вам нужно вызывать это из вашего Java-приложения?

0 голосов
/ 17 декабря 2010

Оказалось, что это была проблема со старой версией DbUnit.Я обновился до 2.4.8, использовал org.dbunit.ext.oracle.Oracle10DataTypeFactory и теперь он работает.

...