Keywords: Hsqldb, HyperSQL, Database, JDBC, Java

| HyperSQL User Guide |
|  | Preface

# HyperSQL User Guide

## HyperSQL Database Engine 2.5.1

#### Edited by ### The HSQL Development Group #### Edited by ### Blaine Simpson The HSQL Development Group #### Edited by ### Fred Toussi The HSQL Development Group Copyright 2002-2020 Blaine Simpson, Fred Toussi and The HSQL Development Group. Permission is granted to distribute this document without any alteration under the terms of the HSQLDB license. You are not allowed to distribute or display this document on the web in an altered form. 2020-06-29 |

List of Tables

1. Available formats of this document
10.1. TO_CHAR, TO_DATE and TO_TIMESTAMP format elements
13.1. Memory Database URL
13.2. File Database URL
13.3. Resource Database URL
13.4. Server Database URL
13.5. User and Password
13.6. Closing old ResultSet when Statement is reused
13.7. Column Names in JDBC ResultSet
13.8. In-memory LOBs from JDBC ResultSet
13.9. Empty batch in JDBC PreparedStatement
13.10. Creating New Database
13.11. Automatic Shutdown
13.12. Validity Check Property
13.13. Execution of Multiple SQL Statements etc.
13.14. SQL Keyword Use as Identifier
13.15. SQL Keyword Starting with the Underscore or Containing Dollar Characters
13.16. Reference to Columns Names
13.17. String Size Declaration
13.18. Type Enforcement in Comparison and Assignment
13.19. Foreign Key Triggered Data Change
13.20. Use of LOB for LONGVAR Types
13.21. Type of string literals in CASE WHEN
13.22. Concatenation with NULL
13.23. NULL in Multi-Column UNIQUE Constraints
13.24. Truncation or Rounding in Type Conversion
13.25. Decimal Scale of Division and AVG Values
13.26. Support for NaN values
13.27. Sort order of NULL values
13.28. Sort order of NULL values with DESC
13.29. String Comparison with Padding
13.30. Default Locale Language Collation
13.31. Case-Insensitive Varchar columns
13.32. Storage of Live Java Objects
13.33. Names of System Indexes Used for Constraints
13.34. DB2 Style Syntax
13.35. MSSQL Style Syntax
13.36. MySQL Style Syntax
13.37. Oracle Style Syntax
13.38. PostgreSQL Style Syntax
13.39. Default Table Type
13.40. Transaction Control Mode
13.41. Default Isolation Level for Sessions
13.42. Transaction Rollback in Deadlock
13.43. Transaction Rollback on Interrupt
13.44. Time Zone and Interval Types
13.45. Opening Database as Read Only
13.46. Opening Database Without Modifying the Files
13.47. Huge database files and tables
13.48. Event Logging
13.49. SQL Logging
13.50. Temporary Result Rows in Memory
13.51. Unused Space Recovery
13.52. Rows Cached In Memory
13.53. Size of Rows Cached in Memory
13.54. Size Scale of Disk Table Storage
13.55. Size Scale of LOB Storage
13.56. Compression of BLOB and CLOB data
13.57. Internal Backup of Database Files
13.58. Use of Lock File
13.59. Logging Data Change Statements
13.60. Automatic Checkpoint Frequency
13.61. Automatic Defrag at Checkpoint
13.62. Compression of the .script file
13.63. Logging Data Change Statements Frequency
13.64. Logging Data Change Statements Frequency
13.65. Use of NIO for Disk Table Storage
13.66. Use of NIO for Disk Table Storage
13.67. Recovery Log Processing
13.68. Default Properties for TEXT Tables
13.69. Forcing Garbage Collection
13.70. Crypt Property For LOBs
13.71. Cipher Key for Encrypted Database
13.72. Cipher Initialization Vector for Encrypted Database
13.73. Crypt Provider Encrypted Database
13.74. Cipher Specification for Encrypted Database
13.75. Logging Framework
13.76. Text Tables
13.77. Java Functions
14.1. common server and webserver properties
14.2. server properties
14.3. webserver properties
17.1. Settings List

List of Examples

1.1. Java code to connect to the local hsql Server
1.2. Java code to connect to the local http Server
1.3. Java code to connect to the local secure SSL hsqls: and https: Servers
1.4. specifying a connection property to shutdown the database when the last connection is closed
1.5. specifying a connection property to disallow creating a new database
3.1. User-defined Session Variables
3.2. User-defined Temporary Session Tables
3.3. Setting Transaction Characteristics
3.4. Locking Tables
3.5. Rollback
3.6. Setting Session Characteristics
3.7. Setting Session Authorization
3.8. Setting Session Time Zone
4.1. inserting the next sequence value into a table row
4.2. numbering returned rows of a SELECT in sequential order
4.3. using the last value of a sequence
4.4. Column values which satisfy a 2-column UNIQUE constraint
11.1. Using CACHED tables for the LOB schema
11.2. Creating a system-versioned table
11.3. Displaying DbBackup Syntax
11.4. Offline Backup Example
11.5. Listing a Backup with DbBackup
11.6. Restoring a Backup with DbBackup
11.7. SQL Log Example
11.8. Finding foreign key rows with no parents after a bulk import
14.1. Exporting certificate from the server's keystore
14.2. Adding a certificate to the client keystore
14.3. Specifying your own trust store to a JDBC client
14.4. Getting a pem-style private key into a JKS keystore
14.5. Validating and Testing an ACL file
15.1. example sqltool.rc stanza
16.1. Using CACHED tables for the LOB schema
16.2. MainInvoker Example
16.3. HyperSQL Snapshot Repository Definition
16.4. Sample Snapshot Ivy Dependency
16.5. Sample Snapshot Maven Dependency
16.6. Sample Snapshot Gradle Dependency
16.7. Sample Snapshot ivy.xml loaded by Ivyxml plugin
16.8. Sample Snapshot Groovy Dependency, using Grape
16.9. Sample Range Ivy Dependency
16.10. Sample Range Maven Dependency
16.11. Sample Range Gradle Dependency
16.12. Sample Range ivy.xml loaded by Ivyxml plugin
16.13. Sample Range Groovy Dependency, using Grape
C.1. Buiding the standard HSQLDB jar file with Ant
C.2. Example source code before CodeSwitcher is run
C.3. CodeSwitcher command line invocation
C.4. Source code after CodeSwitcher processing

$Revision: 6145 $

|  | Preface