git-svn-id: http://code.alibabatech.com/svn/druid/trunk@83 b9813039-fb51-4c41-a8b9-e21c2acb5095

This commit is contained in:
wenshao
2011-05-14 15:36:41 +00:00
parent 41b1cd52c3
commit 0125b38d8d
3 changed files with 20 additions and 0 deletions
@@ -27,6 +27,7 @@ import com.alibaba.druid.sql.ast.statement.SQLSelectQuery;
import com.alibaba.druid.sql.ast.statement.SQLSelectQueryBlock;
import com.alibaba.druid.sql.ast.statement.SQLSelectStatement;
import com.alibaba.druid.sql.ast.statement.SQLTableSource;
import com.alibaba.druid.sql.dialect.mysql.ast.expr.MySqlBooleanExpr;
import com.alibaba.druid.sql.dialect.mysql.parser.MySqlStatementParser;
import com.alibaba.druid.sql.parser.SQLStatementParser;
@@ -105,6 +106,9 @@ public class MySqlMockExecuteHandlerImpl implements MockExecuteHandler {
} else if (expr instanceof SQLNCharExpr) {
row[i] = ((SQLNCharExpr) expr).getText();
column.setColumnType(Types.NVARCHAR);
} else if (expr instanceof MySqlBooleanExpr) {
row[i] = ((MySqlBooleanExpr) expr).getValue();
column.setColumnType(Types.NVARCHAR);
} else if (expr instanceof SQLNullExpr) {
row[i] = null;
} else if (expr instanceof SQLMethodInvokeExpr) {
@@ -28,6 +28,8 @@ public enum Token {
LOCK("LOCK"), SOME("SOME"), ANY("ANY"),
TRUE("TRUE"), FALSE("FALSE"),
EOF, ERROR,
IDENTIFIER,
HINT,
@@ -77,4 +77,18 @@ public class MockExecuteTest extends TestCase {
stmt.close();
conn.close();
}
public void test_5() throws Exception {
Connection conn = DriverManager.getConnection("jdbc:mock:");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT true FROM DUAL");
Assert.assertTrue(rs.next());
Assert.assertEquals(true, rs.getBoolean(1));
rs.close();
stmt.close();
conn.close();
}
}