提交 03d917b3 authored 作者: Thomas Mueller's avatar Thomas Mueller

--no commit message

--no commit message
上级 0f9001ea
...@@ -18,10 +18,14 @@ Change Log ...@@ -18,10 +18,14 @@ Change Log
<h1>Change Log</h1> <h1>Change Log</h1>
<h2>Next Version (unreleased)</h2> <h2>Next Version (unreleased)</h2>
<ul><li>MySQL compatibility: support for := assignment as in @sum:=@sum+x <ul><li>Natural join: the joined columns are not repeated any more when using SELECT *.
</li><li>User defined aggregate functions: the method getType expected internal data types
instead of SQL types.
</li><li>User defined aggregate functions did not work if there was no group by expression.
</li><li>MySQL compatibility: support for := assignment as in @sum:=@sum+x
</li><li>INSERT INTO TEST(SELECT * FROM TEST) is now supported. </li><li>INSERT INTO TEST(SELECT * FROM TEST) is now supported.
</li><li>Each session threw an invisible exception when garbage collected. </li><li>Each session threw an invisible exception when garbage collected.
</li><li>Foreign key constraints referring to a quoted column did not work. </li><li>Foreign key constraints that refer to a quoted column did not work.
</li><li>New meta data column INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION to get </li><li>New meta data column INFORMATION_SCHEMA.TABLES.LAST_MODIFICATION to get
the table modification counter. the table modification counter.
</li><li>Shell: line comments didn't work correctly. </li><li>Shell: line comments didn't work correctly.
......
...@@ -469,7 +469,7 @@ SmartFoxServer</a><br /> ...@@ -469,7 +469,7 @@ SmartFoxServer</a><br />
Platform for developing multiuser applications and games with Macromedia Flash. Platform for developing multiuser applications and games with Macromedia Flash.
</p> </p>
<p><a href="http://sqlorm.sourceforge.net/index.html> <p><a href="http://sqlorm.sourceforge.net/index.html">
SQLOrm</a><br /> SQLOrm</a><br />
Java Object Relation Mapping. Java Object Relation Mapping.
</p> </p>
......
...@@ -262,7 +262,6 @@ Of course, patches are always welcome, but are not always applied as is. Patches ...@@ -262,7 +262,6 @@ Of course, patches are always welcome, but are not always applied as is. Patches
</li><li>Server: use one listener (detect if the request comes from an PG or TCP client) </li><li>Server: use one listener (detect if the request comes from an PG or TCP client)
</li><li>Store dates as 'local'. Existing files use GMT. Use escape syntax for compatibility. </li><li>Store dates as 'local'. Existing files use GMT. Use escape syntax for compatibility.
</li><li>Support data type INTERVAL </li><li>Support data type INTERVAL
</li><li>NATURAL JOIN: MySQL and PostgreSQL don't repeat columns when using SELECT * ...
</li><li>Optimize SELECT MIN(ID), MAX(ID), COUNT(*) FROM TEST WHERE ID BETWEEN 100 AND 200 </li><li>Optimize SELECT MIN(ID), MAX(ID), COUNT(*) FROM TEST WHERE ID BETWEEN 100 AND 200
</li><li>Support Oracle functions: TRUNC, NVL2, TO_CHAR, TO_DATE, TO_NUMBER </li><li>Support Oracle functions: TRUNC, NVL2, TO_CHAR, TO_DATE, TO_NUMBER
</li><li>Sequence: PostgreSQL compatibility (rename, create) (http://www.postgresql.org/docs/8.2/static/sql-altersequence.html) </li><li>Sequence: PostgreSQL compatibility (rename, create) (http://www.postgresql.org/docs/8.2/static/sql-altersequence.html)
...@@ -385,6 +384,7 @@ Of course, patches are always welcome, but are not always applied as is. Patches ...@@ -385,6 +384,7 @@ Of course, patches are always welcome, but are not always applied as is. Patches
</li><li>AUTO_SERVER: support changing IP addresses (disable a network while the database is open). </li><li>AUTO_SERVER: support changing IP addresses (disable a network while the database is open).
</li><li>Avoid using java.util.Calendar internally because it's slow, complicated, and seems to be buggy. </li><li>Avoid using java.util.Calendar internally because it's slow, complicated, and seems to be buggy.
</li><li>Support TRUNCATE .. CASCADE like PostgreSQL. </li><li>Support TRUNCATE .. CASCADE like PostgreSQL.
</li><li>Support opening a database that is in the classpath, maybe using a new file system.
</li></ul> </li></ul>
<h2>Not Planned</h2> <h2>Not Planned</h2>
......
...@@ -769,10 +769,23 @@ To search the index, use the following query: ...@@ -769,10 +769,23 @@ To search the index, use the following query:
SELECT * FROM FT_SEARCH('Hello', 0, 0); SELECT * FROM FT_SEARCH('Hello', 0, 0);
</pre> </pre>
<p> <p>
This will produce a result set that contains the query needed to retrieve the data:
</p>
<p>
QUERY: "PUBLIC"."TEST" WHERE "ID"=1
</p>
<p>
If you prefer the raw data, use <code>FT_SEARCH_DATA('Hello', 0, 0);</code>.
The result contains the columns SCHEMA (the schema name),
TABLE (the table name), COLUMNS (an array of column names), and KEYS
(an array of objects).
</p>
<p>
You can also call the index from within a Java application: You can also call the index from within a Java application:
</p> </p>
<pre> <pre>
org.h2.fulltext.FullText.search(conn, text, limit, offset) org.h2.fulltext.FullText.search(conn, text, limit, offset);
org.h2.fulltext.FullText.searchData(conn, text, limit, offset);
</pre> </pre>
<h3>Using the Lucene Fulltext Search</h3> <h3>Using the Lucene Fulltext Search</h3>
...@@ -797,16 +810,30 @@ CALL FTL_CREATE_INDEX('PUBLIC', 'TEST', NULL); ...@@ -797,16 +810,30 @@ CALL FTL_CREATE_INDEX('PUBLIC', 'TEST', NULL);
</pre> </pre>
<p> <p>
PUBLIC is the schema, TEST is the table name. The list of column names (column separated) is optional, PUBLIC is the schema, TEST is the table name. The list of column names (column separated) is optional,
in this case all columns are indexed. The index is updated in read time. To search the index, use the following query: in this case all columns are indexed. The index is updated in read time. To search the index,
use the following query:
</p> </p>
<pre> <pre>
SELECT * FROM FTL_SEARCH('Hello', 0, 0); SELECT * FROM FTL_SEARCH('Hello', 0, 0);
</pre> </pre>
<p> <p>
This will produce a result set that contains the query needed to retrieve the data:
</p>
<p>
QUERY: "PUBLIC"."TEST" WHERE "ID"=1
</p>
<p>
If you prefer the raw data, use <code>FT_SEARCH_DATA('Hello', 0, 0);</code>.
The result contains the columns SCHEMA (the schema name),
TABLE (the table name), COLUMNS (an array of column names), and KEYS
(an array of objects).
</p>
<p>
You can also call the index from within a Java application: You can also call the index from within a Java application:
</p> </p>
<pre> <pre>
org.h2.fulltext.FullTextLucene.search(conn, text, limit, offset) org.h2.fulltext.FullTextLucene.search(conn, text, limit, offset);
org.h2.fulltext.FullTextLucene.searchData(conn, text, limit, offset);
</pre> </pre>
<br /><a name="user_defined_variables"></a> <br /><a name="user_defined_variables"></a>
......
...@@ -283,6 +283,14 @@ java org.h2.test.TestAll timer ...@@ -283,6 +283,14 @@ java org.h2.test.TestAll timer
System.setProperty("h2.check2", "true"); System.setProperty("h2.check2", "true");
/* /*
create table a(x array);
insert into a values((1, 2));
@META SELECT x[1] FROM a;
should be varchar
javadocs: check if there is a desc for a param, return...
add javadocs for fulltext package.
FTL_SEARCH_DATA function was documented
JCR: for each node type, create a table; one 'dynamic' table with parameter; JCR: for each node type, create a table; one 'dynamic' table with parameter;
option to cache the results option to cache the results
<link rel="icon" type="image/png" href="/path/image.png"> <link rel="icon" type="image/png" href="/path/image.png">
......
...@@ -302,8 +302,10 @@ public class Build extends BuildBase { ...@@ -302,8 +302,10 @@ public class Build extends BuildBase {
delete("docs"); delete("docs");
mkdir("docs/javadoc"); mkdir("docs/javadoc");
javadoc(new String[] { "-sourcepath", "src/main", "org.h2.jdbc", "org.h2.jdbcx", javadoc(new String[] { "-sourcepath", "src/main", "org.h2.jdbc", "org.h2.jdbcx",
"org.h2.tools", "org.h2.api", "org.h2.constant", "org.h2.tools", "org.h2.api", "org.h2.constant", "org.h2.fulltext",
"-doclet", "org.h2.build.doclet.Doclet"}); "-doclet", "org.h2.build.doclet.Doclet",
"-classpath",
"ext/lucene-core-2.2.0.jar"});
copy("docs/javadoc", getFiles("src/docsrc/javadoc"), "src/docsrc/javadoc"); copy("docs/javadoc", getFiles("src/docsrc/javadoc"), "src/docsrc/javadoc");
} }
......
...@@ -150,6 +150,12 @@ public class BuildBase { ...@@ -150,6 +150,12 @@ public class BuildBase {
*/ */
protected void projectHelp() { protected void projectHelp() {
Method[] methods = getClass().getDeclaredMethods(); Method[] methods = getClass().getDeclaredMethods();
Arrays.sort(methods, new Comparator() {
public int compare(Object o1, Object o2) {
Method a = (Method) o1, b = (Method) o2;
return a.getName().compareTo(b.getName());
}
});
out.println("Targets:"); out.println("Targets:");
for (int i = 0; i < methods.length; i++) { for (int i = 0; i < methods.length; i++) {
Method m = methods[i]; Method m = methods[i];
......
...@@ -573,4 +573,5 @@ daylight vision declarative shape formula webapp catalina study impact ...@@ -573,4 +573,5 @@ daylight vision declarative shape formula webapp catalina study impact
statisticlog activeobjects manske redeployment michael kaspersky datatext statisticlog activeobjects manske redeployment michael kaspersky datatext
bleyl donald conservative offsets diabetes ansorg allocating osmond gluco bleyl donald conservative offsets diabetes ansorg allocating osmond gluco
joachim mysqladmin sudo mysqld indicator wire ring relates expedites joachim mysqladmin sudo mysqld indicator wire ring relates expedites
approximated approximation dvan dsn dobysoft ebean syswow approximated approximation dvan dsn dobysoft ebean syswow tmueller dbbench
\ No newline at end of file connecturl
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论