el-sql.website.3.2.2.source-code.faq.html Maven / Gradle / Ivy
Show all versions of website Show documentation
Answers - SQuirreL SQL Client.
What's a driver and why do I need one?
Is it the same as a plugin?
Plugins and drivers are two different types
of software. A driver allows you to connect to a particular database
(Oracle, Sybase, DB2, etc.) We cannot legally ship most drivers with
SQuirreL (in the installer or from the update site) as they are
proprietary and most database vendors require users to download them
directly from their website.
Plugins are another piece of software whose purpose is to enhance
SQuirreL's ability to render and work with objects that are stored
in the database after a connection is made. Some plugins are
database-specific and are named according to the database that they
are activated for. When start a session in SQuirreL, if the plugin
that corresponds with that database type is installed, it will be
activated when a connection is made and SQuirreL will have more
capabilities than without that plugin installed and activated.
There are other plugins, that are not database-specific (for
example, graph, codecompletion, syntax highlighting, etc.) that
are activated regardless of the type of database, if they have
been installed. If you choose "standard" and no "optional"
plugins when prompted by the installer, then you get a useful
subset of plugins that are helpful regardless of the database type.
You can check to see which plugins you have installed by opening
up the plugin status table (Plugins -> Summary), or by looking
in the <SQUIRREL_INSTALL_DIR>/plugins folder.
I removed the directory
where SQuirreL was installed, and installed it into a new location. I
was surprised to see all of my alias, drivers and preference settings
were maintained when I launched SQuirreL from the new location. Where
are alias, driver and preference configurations persisted?
All preference data is stored in the /.squirrel-sql/
folder. The folder is typically /home/
on UNIX and C:\Documents and Settings\ on
Windows. The aliases are stored in SQLAliases23.xml and
SQLAliases23_treeStructure.xml, while the driver definitions are found
in SQLDrivers.xml. Other preference data is also stored in various
files in this directory.
Is there a way to
configure Squirrel to show integers without commas? We use integer IDs
that look like 1000234. Squirrel is currently showing the ID as
1,000,234.
Yes there is. Open Global Preferences from
the File menu and then click on Data Type Control tab. Scroll down to
the bottom. Scroll down to the "FLOAT, REAL, DOUBLE, NUMERIC" section,
select "Use default format".
I don't see Oracle
system tables/views list in the code completion dialog. Can I
configure this somehow?
For startup performance, fine-grain control
was introduced to allow you to specify which schemas are loaded. This
is a big deal for Oracle as it has by default many schemas which are
rarely used and some that are used occasionally that have tons of
objects in them (e.g. SYS). You can control this configuration per
alias as follows:
- Right-click on the alias and choose "Alias Properties".
- In the "Schemas" tab of the resulting dialog, choose
"Specify Schema loading and caching".
- Click the "Connect database to refresh Schema table"
button.(Now, for each schema listed you are able to specify whether
or not tables, views and/or procedures are loaded into the object
tree, by clicking the cell in Tables, Views, or Procedures.
- Turn off all schemas and then explicitly add the ones you
need for this particular alias. You can achieve this easily with the
buttons below the schema table. It forms a sentence that should read
"Set <All Objects> in all Schemas to <Don't load>", then
click Apply. All Table, View and Procedure cells move to "Don't load"
value.
- Find your schema and change the Tables, Views and Procedures
cells for that row to "Load ..." (caching will help if you have a
large number of objects that are always present)
- Next find the SYS schema and change it to load VIEWS.
- Start a new session with that alias and SYS views will be
loaded into the object tree of that new session
How do I install
SQuirreL SQL Client on Windows Vista?
Doug Lawry has reported that the following steps
are required in order to install SQuirreL SQL Client on Windows Vista.
- Start "cmd.exe" using "Run as administrator"
- Change directory to the file location
- Run "java -jar squirrel-sql-2.5.1-install.jar"
I get a blank SQuirreL
2.4 window when running on Fedora Core while using Desktop Effects
(Compiz) and Sun Java 1.5. What gives?
Andrew Melton has reported that disabling
Desktop Effects (and using metacity) solved the problem. Furthermore,
he also reports that after re-enabling Desktop Effects SQuirreL still
renders correctly. Additionally, this
Java bug seems to be at least related to if not the same problem.
What database systems
does SQuirreL work with?
In theory SQuirreL should work with any DBMS
that has a JDBC 2.0 driver. However not all drivers/DBMS's are fully
complient with the JDBC 2.0 specification. People have reported
SQuirreL working with the following:
- Axion Java RDBMS.
- Daffodil
(One$DB)
- Apache Derby
(formerly Cloudscape) see Using
SQuirreL SQL with Derby written by Susan Cline.
-
Fujitsu Siemens SESAM/SQL-Server with the
SESAM/SQL JDBC driver.
- Firebird
with the JayBird JCA/JDBC Driver.
- FrontBase
- HSQL.
- Hypersonic SQL.
- H2
- IBM DB2 for Linux, OS/400
and Windows.
- Informix.
- CA Ingres 2.6 SP2 with
EDBC driver v1.8 (probably works with Caribou Lake driver too).
- InstantDB.
- Interbase with the Interclient JDBC driver.
- Mckoi SQL.
- Microsoft Access with
the JDBC/ODBC bridge.
- Microsoft SQL Server
with the Microsoft, WebLogic
and jTDS JDBC drivers.
- Mimer SQL
- MySQL with the MM MySQL JDBC driver.
- Netezza Data Warehouse
with 4.0.4P2 Driver
- Oracle 8i, 9i and 10g
with the Oracle thin and OCI drivers.
- Pointbase.
- PostgreSQL 7.1.3 and
higher..
- Progress OpenEdge
10.1x.
- SAPDB.
- Sybase with the JConnect JDBC driver. There are
currently some issues with Sybase JConnect 5.5 and SQuirreL 1.1
although JConnect 4.5 seems to work.
- Teradata
Warehouse
- ThinkSQL RDBMS.
- Vertica Analytic
Database
Please send us an email if you have
used SQuirreL successfully with other products.
Which version of the JVM
is SQuirreL compatible with?
Different versions of SQuirreL have different
minimum JVM version requirements. The following table provides a
summary of the version requirements:
SQuirreL Version
Minimum JVM Version
3.0+
1.6
2.4 - 2.6.x
1.5
2.0 - 2.3.x
1.4.2
1.1 Final
1.3.1
I get a "Segmentation
fault" on Linux
Early versions of the Sun 1.3.0 VM on Linux
throw a segmentation fault when running SQuirreL. Either update to the
latest 1.3.1 VM or pass the -classic flag to the Java executable -
i.e.
java -classic -cp...
I get a "Login has timed
out" error with Microsoft SQL Server
Early beta versions of the Microsoft type 4 JDBC
driver had a bug which would cause this error when trying to connect.
Go to the General Tab in the Global Preferences dialog and change the
SQL Login Timeout to 0.
I get a "Can't start a
cloned connection while in manual transaction mode" error with
Microsoft SQL Server
When connecting to Microsoft SQL Server with
auto-commit off or changing auto-commit to false for an existing
connection you may get this error. To stop it from occuring enable the
'selectmethod=cursor' driver property in the alias.
I don't see an object
tree with PostgreSQL
Versions of PostgreSQL prior to 7.1.3 didn't
supply sufficent metadata to build the object tree in SQuirreL. A fix
has been put into SQuirreL so that it would work with PostgreSQL
7.1.2.
I get a
"NullPointerException" at BaseSQLEntryPanel.java:23
This is a known problem with JDK1.3.0 on some
platforms. Upgrade your Java version to 1.3.1 or better.
Ingres reports "Error:
contsbt: ca.edbc.util.EdbcEx: No MST is currently in progress, cannot
declare another cursor." when I connect and nothing is listed under
the schema name in the Object Tree
Right-click on the schema in the explorer and
select refresh, objects should appear as normal.
Informix reports "The
specified table (schema.table) is not in the database" when trying to
view the contents of a table in the current schema
This is a bug in earlier versions of the
Informix JDBC driver and is known to be fixed in version 9.4 of
Informix and version 2.21 of the Informix JDBC driver.
I am using SQuirreL 2.x
and when I connect to a database I get the following warning message:
JRE/JDBC Version mismatch
The driver being used ... is not JDBC N.N compliant.
You should consider getting a more recent version of this driver.
It's telling you that your JRE version is
much newer than your driver's supported JDBC version. In general, it's
hard to tell how well tested an older driver is with a newer
JVM(1.4+). The odds are good that the newer JVM wasn't available when
the older driver was written. So the warning message is there to let
you know that you aren't getting the most efficient use from SQuirreL
2.x and your database driver. SQuirreL 2.x requires JVM 1.4 or higher
so your choices are limited there. Upgrade your JDBC driver if
possible - if not, then you can disable the warning. To disable it go
to Global Preferences -> General and uncheck the checkbox next to Warning
for JRE/JDBC Version Mismatch
Answers - Plugins.
How do I write a plugin?
There is some information in the document
plugins.html which you can find in the docs directory within your
SQuirreL program directory. This document badly needs a lot of work
and its on our todo list. You can also look at the existing plugins to
see how they've done things.
If you have an idea for a plugin just send a
message to the SQuirreL Developers list giving a brief description.
This helps to ensure that two people don't develop the same plugin.
What are these
directories "Colin Bell" and "Johan Compagner" in the plugins
directory?
Some people have reported these directories
appearing when running JDK 1.3 on Windows 2000. It appears to be a
problem with the Hotspot VM. Passing the -classic flag to the java
executable fixes the problem - i.e.
java -classic -cp...
I can't see any "Look
and Feel" files.
This can be caused by the What
are these directories "Colin Bell" and "Johan Compagner" in the
plugins directory? problem.
I get a
java.lang.NoClassDefFoundError: org/w3c/dom/Node error when trying to
validate SQL.
If you use the SQL Validator plugin with JDK 1.3
you will need a JAXP 1.1 XML compliant parser such as xml-xerces or the JAXP 1.1 reference
implementation. Copy the jar files from your XML parser to the
directory <squirrel-sql>/plugins/sqlval/lib. For xml-xerces this
should be xerces.jar and for JAXP 1.1 reference implementation this
should be crimson.jar and jaxp.jar.