|
HSQLDB example source code file (DatabaseManagerCommon.java)
The HSQLDB DatabaseManagerCommon.java source code
/*
* For work developed by the HSQL Development Group:
*
* Copyright (c) 2001-2010, The HSQL Development Group
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* Neither the name of the HSQL Development Group nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG,
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
*
* For work originally developed by the Hypersonic SQL Group:
*
* Copyright (c) 1995-2000, The Hypersonic SQL Group.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* Neither the name of the Hypersonic SQL Group nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE HYPERSONIC SQL GROUP,
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Hypersonic SQL Group.
*/
package org.hsqldb.util;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Random;
// sqlbob@users 20020401 - patch 1.7.0 by sqlbob (RMP) - enhancements
// sqlbob@users 20020407 - patch 1.7.0 - reengineering
// nickferguson@users 20021005 - patch 1.7.1 - enhancements
// fredt@users 20021012 - patch 1.7.1 - changes to test database DDL
// weconsultants@users 20041116 - patch 1.8.0 - in 'TestHelp' added 'IF EXISTS for both DROPS.
// Now catching the execption that was never caught before.
/**
* Common code in Swing and AWT versions of DatabaseManager
*
* New class based on Hypersonic original
*
* @author Thomas Mueller (Hypersonic SQL Group)
* @author Bob Preston (sqlbob@users dot sourceforge.net)
* @version 1.8.0
* @since 1.7.0
*/
class DatabaseManagerCommon {
private static Random rRandom = new Random(100);
static String[] selectHelp = {
"SELECT * FROM ",
"SELECT [LIMIT n m] [DISTINCT] \n"
+ "{ selectExpression | table.* | * } [, ... ] \n"
+ "[INTO [CACHED|TEMP|TEXT] newTable] \n" + "FROM tableList \n"
+ "[WHERE Expression] \n"
+ "[ORDER BY selectExpression [{ASC | DESC}] [, ...] ] \n"
+ "[GROUP BY Expression [, ...] ] \n" //
+ "[UNION [ALL] selectStatement]"
};
static String[] insertHelp = {
"INSERT INTO ",
"INSERT INTO table [ (column [,...] ) ] \n"
+ "{ VALUES(Expression [,...]) | SelectStatement }"
};
static String[] updateHelp = {
"UPDATE ",
"UPDATE table SET column = Expression [, ...] \n"
+ "[WHERE Expression]"
};
static String[] deleteHelp = {
"DELETE FROM ", "DELETE FROM table [WHERE Expression]"
};
static String[] createTableHelp = {
"CREATE TABLE ",
"CREATE [TEMP] [CACHED|MEMORY|TEXT] TABLE name \n"
+ "( columnDefinition [, ...] ) \n\n" + "columnDefinition: \n"
+ "column DataType [ [NOT] NULL] [PRIMARY KEY] \n" + "DataType: \n"
+ "{ INTEGER | DOUBLE | VARCHAR | DATE | TIME |... }"
};
static String[] dropTableHelp = {
"DROP TABLE ", "DROP TABLE table"
};
static String[] createIndexHelp = {
"CREATE INDEX ",
"CREATE [UNIQUE] INDEX index ON \n" + "table (column [, ...])"
};
static String[] dropIndexHelp = {
"DROP INDEX ", "DROP INDEX table.index"
};
static String[] checkpointHelp = {
"CHECKPOINT", "(HSQLDB SQL only)"
};
static String[] scriptHelp = {
"SCRIPT", "SCRIPT ['file']\n\n" + "(HSQLDB SQL only)"
};
static String[] shutdownHelp = {
"SHUTDOWN",
"SHUTDOWN [COMPACT|IMMEDIATELY|SCRIPT]\n\n" + "(HSQLDB SQL only)"
};
static String[] setHelp = {
"SET ",
"SET AUTOCOMMIT { TRUE | FALSE }\n"
+ "SET DATABASE COLLATION \"<collationname>\"\n"
+ "SET CHECKPOINT DEFRAG <size>\n"
+ "SET INITIAL SCHEMA <schemaname>\n" //
+ "SET LOGSIZE <size>\n" //
+ "SET MAXROWS maxrows\n" //
+ "SET PASSWORD <password>\n" //
+ "SET PROPERTY \"<propname>\"
Other HSQLDB examples (source code examples)Here is a short list of links related to this HSQLDB DatabaseManagerCommon.java source code file: |
| ... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.