| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| <!-- |
| This template file can be used as example for James Server configuration |
| DO NOT USE IT AS SUCH AND ADAPT IT TO YOUR NEEDS |
| --> |
| |
| <!-- See http://james.apache.org/server/3/config.html for usage --> |
| |
| <sqlResources> |
| |
| <!-- |
| This section provided configuration to determine the |
| database product which is being used for storage. Different database |
| products may require different SQL syntax. |
| |
| The jdbc database connection is examined to see if it matches with the |
| regular expressions specified in any of the defined matchers. The matchers |
| are processed in the over provided here, with the first successful match |
| defining the "db" value for this connection. |
| |
| This value is then used to choose between different definitions for various |
| named sql statements, defined below. If no match is found, |
| the default sql statements are used. |
| --> |
| <dbMatchers> |
| <dbMatcher db="mssql" databaseProductName="microsoft sql server"/> |
| <dbMatcher db="oracle" databaseProductName="oracle.*"/> |
| <dbMatcher db="mysql" databaseProductName="my.*"/> |
| <dbMatcher db="h2" databaseProductName="h2.*"/> |
| <dbMatcher db="postgresql" databaseProductName="postgres.*"/> |
| <dbMatcher db="hsqldb" databaseProductName="hsql.*"/> |
| <dbMatcher db="sapdb" databaseProductName="sap.*"/> |
| <dbMatcher db="hypersonic" databaseProductName="HypersonicSQL"/> |
| <dbMatcher db="db2" databaseProductName="db2.*"/> |
| <dbMatcher db="ingres" databaseProductName="ingres.*"/> |
| </dbMatchers> |
| |
| <!-- |
| With the following section it is possible to associate several name/value pairs |
| of options to a database product, identified by the "db" XML attribute name. |
| |
| An element without a "db" attribute, if used for an option name, will become a default value for such option. |
| Each option may have a "default default", i.e. a default that applies if no element with an empty |
| "db" attribute (default element) exists as said above; |
| such default default must be documented for such option below. |
| |
| The order of the XML elements is meaningless. |
| |
| Here only "getBody" and "getAttributes" option names are set, but others could be used in the future. |
| Option names: |
| "getBody" - a string (case insensitive) telling which JDBC ResultSet method will be used to |
| get the message body field for a database product. |
| The default default value is "useBytes".. |
| Values (case insensitive): |
| "useBytes" - use getBytes(int). |
| "useBlob" - use getBlob(int). |
| "getAttributes" - a string (case insensitive) telling which JDBC ResultSet method will be used to |
| get the message attributes field for a database product. |
| The default default value is "useBytes".. |
| Values (case insensitive): |
| "useBytes" - use getBytes(int). |
| "useBlob" - use getBlob(int). |
| --> |
| <dbOptions> |
| <dbOption name="getBody" value="useBytes"/> |
| <dbOption name="getAttributes" value="useBytes"/> |
| <dbOption db="mssql" name="getBody" value="useBytes"/> |
| <dbOption db="mssql" name="getAttributes" value="useBytes"/> |
| <dbOption db="oracle" name="getBody" value="useBlob"/> |
| <dbOption db="oracle" name="getAttributes" value="useBlob"/> |
| <dbOption db="mysql" name="getBody" value="useBytes"/> |
| <dbOption db="mysql" name="getAttributes" value="useBytes"/> |
| <dbOption db="h2" name="getBody" value="useBytes"/> |
| <dbOption db="h2" name="getAttributes" value="useBytes"/> |
| <dbOption db="postgresql" name="getBody" value="useBytes"/> |
| <dbOption db="postgresql" name="getAttributes" value="useBytes"/> |
| <dbOption db="sapdb" name="getBody" value="useBytes"/> |
| <dbOption db="sapdb" name="getAttributes" value="useBytes"/> |
| <dbOption db="hypersonic" name="getBody" value="useBytes"/> |
| <dbOption db="hypersonic" name="getAttributes" value="useBytes"/> |
| <dbOption db="hsqldb" name="getBody" value="useBytes"/> |
| <dbOption db="hsqldb" name="getAttributes" value="useBytes"/> |
| <dbOption db="db2" name="getBody" value="useBlob"/> |
| <dbOption db="db2" name="getAttributes" value="useBlob"/> |
| <dbOption db="ingres" name="getBody" value="useBytes"/> |
| <dbOption db="ingres" name="getAttributes" value="useBytes"/> |
| </dbOptions> |
| |
| <!-- SQL statements to use for various components. --> |
| <!-- --> |
| <!-- Parameter definitions ${param} are replaced with parameter values --> |
| <!-- read from the configuration file. --> |
| <!-- --> |
| <!-- If a named statement has a definition defined for the current database product, --> |
| <!-- then that statement is used. Otherwise the default statement is used. --> |
| |
| <!-- SQL statements for the JdbcMailRepository --> |
| <sqlDefs name="org.apache.james.mailrepository.jdbc.JDBCMailRepository"> |
| |
| <!-- Statements used to check whether a particular message exists in this repository. --> |
| <sql name="checkMessageExistsSQL">SELECT count(*) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to update a message stored in this repository. --> |
| <sql name="updateMessageSQL">UPDATE ${table} SET message_state = ?, error_message = ?, sender = ?, recipients = ?, remote_host = ?, remote_addr = ?, last_updated = ? WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to update the body of a message stored in this repository. --> |
| <sql name="updateMessageBodySQL">UPDATE ${table} SET message_body = ? WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to update the attributes of a message stored in this repository. --> |
| <sql name="updateMessageAttributesSQL">UPDATE ${table} SET message_attributes = ? WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to insert a message into this repository. --> |
| <sql name="insertMessageSQL">INSERT INTO ${table} (message_name, |
| repository_name, message_state, error_message, sender, recipients, |
| remote_host, remote_addr, per_recipient_headers, last_updated, message_body, |
| message_attributes) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)</sql> |
| |
| <!-- Statements used to retrieve a message stored in this repository. --> |
| <sql name="retrieveMessageSQL">SELECT message_state, error_message, sender, recipients, remote_host, remote_addr, per_recipient_headers, last_updated FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to retrieve the body of a message stored in this repository. --> |
| <sql name="retrieveMessageBodySQL">SELECT message_body FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to retrieve the attributes of a message stored in this repository. --> |
| <sql name="retrieveMessageAttributesSQL">SELECT message_attributes FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to retrieve the size of the body of a message stored in this repository. --> |
| <!-- NOTE: This statement is optional and need not be implemented for a particular database to be supported. --> |
| <sql name="retrieveMessageBodySizeSQL" db="mssql">SELECT datalength(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="mysql">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="hypersonic">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="hsqldb">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="postgresql">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="oracle">SELECT dbms_lob.getlength(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="db2">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="ingres">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| <sql name="retrieveMessageBodySizeSQL" db="h2">SELECT length(message_body) FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to delete a message stored in this repository. --> |
| <sql name="removeMessageSQL">DELETE FROM ${table} WHERE message_name = ? AND repository_name = ?</sql> |
| |
| <!-- Statements used to list all messages stored in this repository. --> |
| <sql name="listMessagesSQL">SELECT message_name, message_state, last_updated FROM ${table} WHERE repository_name = ? ORDER BY last_updated ASC</sql> |
| |
| <!-- Statements used to count messages stored in this repository. --> |
| <sql name="countMessagesSQL">SELECT COUNT(*) FROM ${table}</sql> |
| |
| <!-- Statements used to create the table associated with this class. --> |
| <sql name="createTable" db="mysql"> |
| CREATE TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (100) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) NULL , |
| sender varchar (255) NULL , |
| recipients text NOT NULL , |
| remote_host varchar (255) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers longblob NULL , |
| last_updated datetime NOT NULL, |
| message_body longblob NOT NULL , |
| message_attributes longblob NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="hypersonic"> |
| CREATE CACHED TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (255) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) NULL , |
| sender varchar (255) NULL , |
| recipients varchar NOT NULL , |
| remote_host varchar (255) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers varchar NULL , |
| last_updated timestamp NOT NULL, |
| message_body varchar NOT NULL , |
| message_attributes varchar NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="hsqldb"> |
| CREATE CACHED TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (255) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) NULL , |
| sender varchar (255) NULL , |
| recipients varchar NOT NULL , |
| remote_host varchar (255) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers varchar NULL , |
| last_updated timestamp NOT NULL, |
| message_body varchar NOT NULL , |
| message_attributes varchar NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="mssql"> |
| CREATE TABLE [${table}] ( |
| [message_name] [varchar] (200) NOT NULL, |
| [repository_name] [varchar] (255) NOT NULL, |
| [message_state] [varchar] (30) NOT NULL , |
| [error_message] [varchar] (1000) NULL , |
| [sender] [varchar] (255) NULL , |
| [recipients] [text] NOT NULL , |
| [remote_host] [varchar] (255) NOT NULL , |
| [remote_addr] [varchar] (20) NOT NULL , |
| [per_recipient_headers] [image] NULL , |
| [last_updated] [datetime] NOT NULL, |
| [message_body] [image] NOT NULL , |
| [message_attributes] [image] NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="oracle"> |
| CREATE TABLE ${table} ( |
| message_name varchar2(200) NOT NULL , |
| repository_name varchar2(255) NOT NULL , |
| message_state varchar2(30) NOT NULL , |
| error_message varchar2(200) NULL , |
| sender varchar2(255) , |
| recipients varchar2(1000) NOT NULL , |
| remote_host varchar2(100) NOT NULL , |
| remote_addr varchar2(20) NOT NULL , |
| per_recipient_headers blob NULL , |
| last_updated date NOT NULL , |
| message_body blob NOT NULL , |
| message_attributes blob NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="postgresql"> |
| CREATE TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (255) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) NULL , |
| sender varchar (255) NULL , |
| recipients text NOT NULL , |
| remote_host varchar (255) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers bytea NULL , |
| last_updated timestamp NOT NULL, |
| message_body bytea NOT NULL , |
| message_attributes bytea NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="sapdb"> |
| CREATE TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (200) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) NULL , |
| sender varchar (200) NULL , |
| recipients long NOT NULL , |
| remote_host varchar (100) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers long byte NULL , |
| last_updated date NOT NULL, |
| message_body long byte NOT NULL , |
| message_attributes long byte NULL , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="db2"> |
| CREATE TABLE ${table} ( |
| message_name varchar(200) NOT NULL , |
| repository_name varchar(255) NOT NULL , |
| message_state varchar(30) NOT NULL , |
| error_message varchar(200) , |
| sender varchar(255) , |
| recipients varchar(1000) NOT NULL , |
| remote_host varchar(100) NOT NULL , |
| remote_addr varchar(20) NOT NULL , |
| per_recipient_headers blob , |
| last_updated timestamp NOT NULL , |
| message_body blob NOT NULL , |
| message_attributes blob , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| <sql name="createTable" db="ingres"> |
| CREATE TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (255) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) , |
| sender varchar (255) , |
| recipients LONG VARCHAR NOT NULL , |
| remote_host varchar (255) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers LONG BYTE , |
| last_updated DATE NOT NULL |
| message_body LONG BYTE NOT NULL , |
| message_attributes LONG BYTE , |
| ) |
| </sql> |
| <sql name="createTable" db="h2"> |
| CREATE TABLE ${table} ( |
| message_name varchar (200) NOT NULL, |
| repository_name varchar (255) NOT NULL, |
| message_state varchar (30) NOT NULL , |
| error_message varchar (200) , |
| sender varchar (255) , |
| recipients long varchar NOT NULL , |
| remote_host varchar (255) NOT NULL , |
| remote_addr varchar (20) NOT NULL , |
| per_recipient_headers blob , |
| last_updated timestamp NOT NULL, |
| message_body blob NOT NULL , |
| message_attributes blob , |
| PRIMARY KEY (repository_name, message_name) |
| ) |
| </sql> |
| </sqlDefs> |
| |
| <sqlDefs name="NetworkWhiteList"> |
| |
| <sql name="networkWhiteListTableName">networkWhitelist</sql> |
| |
| <!-- Statements used to retrieve a single entry. --> |
| <sql name="selectNetwork">SELECT network FROM networkWhitelist where (localUser=? AND localHost=?)</sql> |
| |
| <!-- Statements used to create the "whitelist" table. --> |
| <sql name="createNetworkWhiteListTable" db="hypersonic"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL, |
| PRIMARY KEY (localUser, localHost) |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="hsqldb"> |
| CREATE CACHED TABLE ${table} ( |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="mysql"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) character set latin1 NOT NULL, |
| network varchar (255) NOT NULL |
| ) TYPE=InnoDB |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="mssql"> |
| CREATE TABLE [networkWhitelist] ( |
| [localUser] [varchar] (64) NOT NULL, |
| [localHost] [varchar] (255) NOT NULL, |
| [network] [varchar] (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="oracle"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="postgresql"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="sapdb"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="db2"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="ingres"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| <sql name="createNetworkWhiteListTable" db="h2"> |
| CREATE TABLE networkWhitelist ( |
| localUser varchar (64) NOT NULL, |
| localHost varchar (255) NOT NULL, |
| network varchar (255) NOT NULL |
| ) |
| </sql> |
| |
| </sqlDefs> |
| |
| <!-- SQL statements to support the GreyList Handler--> |
| <!-- --> |
| <sqlDefs name="GreyList"> |
| |
| <sql name="greyListTableName">greylist</sql> |
| |
| <!-- Statements used to retrieve a single entry. --> |
| <sql name="selectQuery">SELECT create_time,count FROM greylist WHERE ipaddress = ? AND sender = ? AND recip = ?</sql> |
| |
| <!-- Statements used to insert an entry. --> |
| <sql name="insertQuery">INSERT INTO greylist (ipaddress,sender,recip,count,create_time) values (?,?,?,?,?)</sql> |
| |
| <!-- Statements used to delete an entry. --> |
| <sql name="deleteQuery">DELETE FROM greylist WHERE create_time < ? AND count = 0</sql> |
| |
| <!-- Statements used to delete an entry. --> |
| <sql name="deleteAutoWhitelistQuery">DELETE FROM greylist WHERE create_time < ?</sql> |
| |
| <!-- Statements used to delete an entry. --> |
| <sql name="updateQuery">UPDATE greylist SET create_time = ? , count = ? WHERE ipaddress = ? AND sender = ? AND recip = ?</sql> |
| |
| <!-- Statements used to create the "whitelist" table. --> |
| <sql name="createGreyListTable" db="hypersonic"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time datetime NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="hsqldb"> |
| CREATE CACHED TABLE ${table} ( |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time timestamo NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="mysql"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time datetime NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) TYPE=InnoDB |
| </sql> |
| <sql name="createGreyListTable" db="mssql"> |
| CREATE TABLE [greylist] ( |
| [ipaddress] [varchar] (20) NOT NULL, |
| [sender] [varchar] (255) NOT NULL, |
| [recip] [varchar] (255) NOT NULL, |
| [count] [int] NOT NULL, |
| [create_time] [datetime] NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="oracle"> |
| CREATE TABLE greylist ( |
| ipaddress varchar2(20) NOT NULL, |
| sender varchar2(255) NOT NULL, |
| recip varchar2(255) NOT NULL, |
| count int NOT NULL, |
| create_time datetime NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="postgresql"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time timestamp NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="sapdb"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time date NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="db2"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time timestamp NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="ingres"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time date NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| <sql name="createGreyListTable" db="h2"> |
| CREATE TABLE greylist ( |
| ipaddress varchar (20) NOT NULL, |
| sender varchar (255) NOT NULL, |
| recip varchar (255) NOT NULL, |
| count int NOT NULL, |
| create_time timestamp NOT NULL, |
| PRIMARY KEY (ipaddress,sender,recip) |
| ) |
| </sql> |
| </sqlDefs> |
| |
| </sqlResources> |